php Illegal string offset 'name'问题及解决
作者:醉雨轩^_^
这篇文章主要介绍了php Illegal string offset 'name'问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
php Illegal string offset 'name'
上面代码可以输出值,但是
报错Warning: Illegal string offset 'name' in
原因是$person数组里面有空数组,空数组里没有name这个字段。
解决办法
是在 foreach 下面加个判断 if(is_array($value)),这样就搞定了。
$name = array(); foreach ($person as $value) { if(is_array($value)) { $name[] = $value['name']; } }
thinkphp:Illegal string offset in 'xxxx'
在使用thinkphp5遇到这个问题 特地记录下。。
在排除各种什么不能用空数组做索引等原因之后,猛然发现volist标签是输出二维数组的。
而find方法返回的是一维数组。。。(*  ̄︿ ̄),当然,你也可以所有都用select方法
解决办法很简单
一维数组直接{关联数组的索引}输出 {$bp.id} 二维数组再用volist
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。