我正在尝试通过基于键提取特定的数组值来创建锚链接。我已经尝试过在for循环中使用foreach循环,但是似乎不起作用。
基于下面的多维数组,我如何遍历每个子数组以创建单独的锚链接,例如:
示例:
/* Array Example */
array(3) {
[0]=>
array(2) {
["@attributes"]=>
array(1) {
["id"] => string(1) "2"
}
["name"]=> string(10) "Mark"
}
[1]=>
array(2) {
["@attributes"]=>
array(1) {
["id"]=> string(1) "4"
}
["name"]=> string(8) "John"
}
[2]=>
array(2) {
["@attributes"]=>
array(1) {
["id"]=> string(1) "5"
}
["name"]=> string(10) "Suzy"
}
/* Desired Output */
<a href="example.com?id=2&name=mark"> Mark </a>
<a href="example.com?id=4&name=john"> John </a>
<a href="example.com?id=5&name=mark"> Suzy </a>
答案 0 :(得分:0)
让我们假设您发布的数组是名为$ users的变量的内容。您可以通过做遍历
foreach ($users as $usr)
{
$usr['@attributes']['id'];
$usr['name'];
}
这样,您可以遍历每个节点而不必担心索引。
您可以通过几种方式在每个foreach迭代中输出链接。一个完整的示例(允许使用HTML而不必转义每个特殊字符)可以是:
<?php
foreach ($users as $usr)
{ ?>
<a href="example.com?id=<?php echo $usr['@attributes']['id']; ?>&name=<?php echo $usr['name']; ?>"><?php echo $usr['name']; ?></a>
<?php } ?>
虽然看上去很复杂,但带有许多PHP的打开和关闭标签,但它使标记变得更容易,几乎没有性能损失