Php foreach得到一个值
当我做var_dump($punkty); 我得到了这样的东西:Php foreach得到一个值,php,foreach,echo,Php,Foreach,Echo,当我做var_dump($punkty); 我得到了这样的东西: array(1) { [0]=> array(4) { ["id"]=> string(2) "28" ["mapa"]=> string(97) "a:3s:3:"lat";s:17:"49.21103723075132";s:3:"lng";s:18:"22.330280542373657";s:4:"zoom";s:2:"17";}" ["miasto"]=>
array(1)
{
[0]=> array(4)
{
["id"]=> string(2) "28"
["mapa"]=> string(97) "a:3s:3:"lat";s:17:"49.21103723075132";s:3:"lng";s:18:"22.330280542373657";s:4:"zoom";s:2:"17";}"
["miasto"]=> string(5) "Cisna"
["nazwa_obiektu"]=> string(44) "Cisna - noclegi u Mirosławy w Bieszczadach"
}
}
当我这样做时:
foreach ($punkty['mapa'] as $item)
{
echo $item;
}
我明白了
Invalid argument supplied for foreach()
如何解决这个问题?我认为您正在尝试这样做:
foreach($punkty as $item) {
echo $item['mapa'];
}
mapa位于
$punkty[0]['mapa']
,而不是$punkty['mapa']
,但是不要忘记验证您的$punkty不是空的,因为没有其他错误:-),对于示例:
if (isset($punkty )){
foreach($punkty as $item){
echo $item[0]['mapa'];
}
}
$punkty['mapa']在您的示例中不是数组,而是只能将实现迭代器的数组或对象传递给foreach循环的字符串