使用代码:
$yourarray = $array('link' => 'text', 'link2' => 'text2');
foreach($yourArray as $key => $value) {
$keys[] = $key;
$items[] = $value;
echo $keys['link'];
}
理论上我认为这会起作用,但是当你把钥匙看起来是数字而不是链接时,link2等
当我可以使用密钥从数组中提取值时,是否可以解决这个问题呢?
感谢
答案 0 :(得分:0)
尝试此更改并检查:
$yourarray = array('link' => 'text', 'link2' => 'text2');
答案 1 :(得分:0)
您的代码包含许多拼写错误
$yourarray = $array['link' => 'text', 'link2' => 'text2'];//This is not an array
$yourArray != $yourarray
foreach($yourArray as $key => $value) { // Undefined variable $yourArray
$keys[] = $key;
$items[] = $value;
echo $keys['link'];//it should be $keys[$key]
}
工作代码
$yourarray = ['link' => 'text', 'link2' => 'text2'];
foreach ($yourarray as $key => $value) {
$keys[$key] = $key;
$items[] = $value;
echo $keys[$key]."<br>";
}
print_r($keys);
print_r($items);
答案 2 :(得分:0)
当您使用$ keys [] =和$ items [] =时,您正在向标准非关联数组添加变量。因此,您无法使用它引用关联索引。如果要回显最近插入$ keys的内容,请使用:
echo end($keys);
除非您正确分配名称索引,否则您将无法使用名称索引从数组中获取任何值。要详细说明一下,当你使用'$ keys [] ='时,你要说这个值加到这个数组中的下一个整数索引(EG:如果$ keys有2个值,你使用'$ keys [] ='以下索引引用将是$ keys [2])