我的codeigniter脚本中存在问题,我似乎无法弄清问题是什么,任何人都可以提供帮助。
$a = '<a href="' . $item['href'] . '" class="' . $aClass . '">' . $item['text'] . '</a>';
错误: 严重性:注意
消息:数组到字符串转换
文件名:libraries / Menu.php
行号:193
从您的评论中复制
这就是Var_dump产生的:
Severity: Notice Message: Array to string conversion Filename: libraries/Menu.php Line Number: 193
这是$ item
的var_dumparray (size=3)
'href' => string '/for-sale/' (length=10)
'text' => array (size=0) empty
'children' => null
答案 0 :(得分:0)
您的text
变量是一个数组,这就是它显示错误的原因。
你可以尝试使用implode(' ', $item['text'])
添加它
或更改$item['text']
将其变为字符串。
答案 1 :(得分:0)
尝试类似下面的内容,您不会将此数组转换为字符串错误
<?php
$aClass = 'mylinks';
$items = array(
array(
'href'=>'http://test.com',
'text'=>'Test',
),
array(
'href'=>'http://google.com',
'text'=>'Google',
),
);
foreach ($items as $item) {
$a = '<a href="' . $item['href'] . '" class="' . $aClass . '">' . $item['text'] . '</a>';
echo $a.'<br/>';
}
?>
答案 2 :(得分:0)
请运行此代码并向我们显示结果以帮助您
echo '$item[\'href\'] is '.(is_array($item['href'])?'array':'string').'<br/>';
echo '$aClass is '.(is_array($aClass)?'array':'string').'<br/>';
echo '$item[\'text\'] is '.(is_array($item['text'])?'array':'string').'<br/>';
答案 3 :(得分:0)
这是你的var_dump
中的相关项目'text' => array (size=0) empty
'text'出现本身就是一个数组。
因此,请修复创建阵列的方式或使用方法。