0

可能重复:
能够在 print_r() 的输出中看到一个变量,但不确定如何在代码中访问它

的输出print_r($node)如下。

[field_pimage] => Array
        (
            [und] => Array
                (
                    [0] => Array
                        (
                            [fid] => 4
                            [alt] => 
                            [title] => 
                            [width] => 1440
                            [height] => 900
                            [uid] => 1
                            [filename] => 200801232112524201.jpg
                            [uri] => public://200801232112524201.jpg
                            [filemime] => image/jpeg
                            [filesize] => 122349
                            [status] => 1
                            [timestamp] => 1351403970

我想输出[uri]'s 的值,我该怎么做?

 $node->field_pimage->und->0->['uri'];  //but it doesn't work?
4

5 回答 5

1

您正在处理数组,而不是对象。

所以你要么需要$node->field_pimage['und'][0]['uri'](如果$node它本身是一个对象)或$node['field_pimage']['und'][0]['uri'](如果$node也是一个数组)

于 2012-11-01T12:27:38.490 回答
1

因为它是一个数组...应该使用...访问它

$node['field_pimage']['und'][0]['uri'];
于 2012-11-01T12:27:40.453 回答
0
echo $node["field_pimage"]["und"]["0"]["uri"];
于 2012-11-01T12:27:55.087 回答
0

由于它们都是数组,因此您可以使用此语法;

$node['field_pimage']['und'][0]['uri'];
于 2012-11-01T12:28:20.300 回答
0

它是一个多维数组。

向下处理数组的层次结构。

$uri = $node['field_pimage']['und'][0]['uri'];

print($uri);
于 2012-11-01T13:49:28.020 回答