我的目标是从多维数组中获取特定元素/值,并将它们分配到循环中的URL中。我已经尝试过并且能够获取数组中的元素,但这会显示所有元素。我只希望获得具体内容,例如nid
和field_x
值。
这是我的链接结构:http://localhost:8080/$nid/$field_x
预期结果:
http://localhost:8080/123/one
http://localhost:8080/789/three
这是我的样本var_dump
结果
array(1) {
[0]=>
array(38) {
["nid"]=>
array(1) {
[0]=>
array(1) {
["value"]=>
int(123)
}
}
["vid"]=>
array(1) {
[0]=>
array(1) {
["value"]=>
int(456)
}
}
["field_x"]=>
array(1) {
[0]=>
array(4) {
["target_id"]=>
string(6) "One"
}
}
["field_y"]=>
array(1) {
[0]=>
array(4) {
["target_id"]=>
string(2) "Two"
}
}
}
[1]=>
array(38) {
["nid"]=>
array(1) {
[0]=>
array(1) {
["value"]=>
int(789)
}
}
["vid"]=>
array(1) {
[0]=>
array(1) {
["value"]=>
int(321)
}
}
["field_x"]=>
array(1) {
[0]=>
array(4) {
["target_id"]=>
string(6) "Three"
}
}
["field_y"]=>
array(1) {
[0]=>
array(4) {
["target_id"]=>
string(2) "Four"
}
}
}
}
答案 0 :(得分:0)
您可以使用foreach()
并使用$values['nid'][0]['value']
或$values['field_x'][0]['target_id']
获取数据:
foreach ($result as $values) {
$nid = $values['nid'][0]['value'];
$field_x = $values['field_x'][0]['target_id'];
echo "http://localhost:8080/$nid/$field_x" ;
}
输出:
http://localhost:8080/123/One
http://localhost:8080/789/Three
你可能想要做一些不是回声的事情,所以你可以创建一个新数组:
$urls = [];
foreach ($result as $values) {
$nid = $values['nid'][0]['value'];
$field_x = $values['field_x'][0]['target_id'];
$urls[] = "http://localhost:8080/$nid/$field_x" ;
}
print_r($urls);