Warning: Illegal string offset cat_name in navigator.php
ecshop 报错 Warning: Illegal string offset cat_name in upload\admin\navigator.php on line 382
这个报错原因是里面可能里面有空数组,$arr = array();
这个时候你只有一个空数组,但是你非要:
$name = $arr[name];
这个时候就会出现这种情况。
解决办法很简单
找到navigator.php 里的get_sysnav()
在 foreach($catlist as $key => $val)下面添加一个判断if(is_array($val)),ok 搞定
具体代码如下:
function get_sysnav()
{
global $_LANG;
$sysmain = array(
array($_LANG[view_cart],flow.php),
array($_LANG[pick_out],pick_out.php),
array($_LANG[group_buy_goods],group_buy.php),
array($_LANG[snatch],snatch.php),
array($_LANG[tag_cloud],tag_cloud.php),
array($_LANG[user_center],user.php),
array($_LANG[wholesale], wholesale.php),
array($_LANG[activity], activity.php),
array($_LANG[myship], myship.php),
array($_LANG[message_board], message.php),
array($_LANG[quotation], quotation.php),
);
$sysmain[] = array(-,-);
$catlist = array_merge(cat_list(0, 0, lse), array(-), article_cat_list(0, 0, lse));
foreach($catlist as $key => $val)
{
if(is_array($val))
{
$val["view_name"] = $val["cat_name"];
for($i=0;$i<$val[level];$i++)
{
$val["view_name"] = nbsp;nbsp;nbsp;nbsp; . $val["view_name"];
}
$val["url"] = str_replace( amp;, , $val["url"]);
$val["url"] = str_replace( , amp;, $val["url"]);
$sysmain[] = array($val["cat_name"], $val["url"], $val["view_name"]);
}
}
return $sysmain;
}