PHP警告-非法字符串偏移量
所以我不明白为什么这不起作用。我正在使用WordPress和一个名为ACF的插件来填充一些数据。我循环遍历我的中继器字段,如下所示:
<?php
$links = get_field('footer_links'); // spits out the array
if($links) {
foreach ( $links as $link ) {
$logo = $link['logo'];
$link = $link['link'];
$text = $link['text'];
echo '<div class="link">';
echo ' <a href="'.$link.'"><img src="'.$logo.'" /><p>'.$text.'</p></a>';
echo '</div>';
}
}
// Logo spits out a image path
// link spits out the URL path
// text SHOULD just spit out the title, however throws PHP warning
?>
对于变量$text
,我收到一条PHP警告。
为什么我的其他变量--<[2-1]、警告:中的字符串偏移量‘Text’非法...
$link
没有抛出此警告?它们的创建方式与其他$text
变量相同。
我已尝试重新创建整个中继器字段并更改名称等。没有成功。
这是我的print_r($link);
Array
(
[0] Array
(
[logo] http://domainname.com/imagepath
[link] http://.....
[text] Text1
)
[1] Array
(
[logo] http://domainname.com/imagepath
[link] http://.....
[text] Text2
)
[2] Array
(
[logo] http://domainname.com/imagepath
[link] http://.....
[text] Text3
)
)
解决方案
此处抛出错误:
$link['text'];
数组$link
缺少索引['text']
。这是因为您在这里覆盖了数组变量:
$link = $link['link'];
更改为:
$href = $link['link'];
你是金子。
相关文章