PHP警告Cannot use a scalar value as an array的解决方法


Posted in PHP onJanuary 11, 2012

看到php的错误日志里有些这样的提示:

[27-Aug-2011 22:26:12] PHP Warning: Cannot use a scalar value as an array in /www/hx/enjoy.php on line 14
[27-Aug-2011 22:26:18] PHP Warning: Cannot use a scalar value as an array in /www/hx/enjoy.php on line 14

检查源程序,大概是下面这样子:

$arr_hx = $mem->get('hx'); 
if(!$arr_hx) { 
$arr_hx[‘a'] = 'b'; 
$mem->set('hx',$arr_hx); 
}

基本明白了,在$mem->get没有得到值时返回的是false,此时$arr_hx是false,布尔值,然后又把它当成数组用了,导致产生了这样的提示。其实也是变量没定义的一种情况,在赋值前加一句 $arr_hx = array() 解决问题。

查了一下,有如下的说明:
引用
需要注意的是类型的转换:
如果一个变量名(如a)已经被定义为非数组类型,例如integer,那么a可以被转为floating point、string(甚至是object类型),但不可以是数组,即a[0]=1;是错误的,php会报出这样的警告“Cannot use a scalar value as an array“。即使a被定义为一维数组,也不能转为高维数组。

PHP 相关文章推荐
PHP 用数组降低程序的时间复杂度
Dec 04 PHP
关于shopex同步ucenter的redirect问题,导致script不运行
Apr 10 PHP
php将字符串全部转换成大写或者小写的方法
Mar 17 PHP
php通过strpos查找字符串出现位置的方法
Mar 17 PHP
提交表单后 PHP获取提交内容的实现方法
May 25 PHP
yii2实现根据时间搜索的方法
May 25 PHP
php is_writable判断文件是否可写实例代码
Oct 13 PHP
详解php用curl调用接口方法,get和post两种方式
Jan 13 PHP
Windows平台实现PHP连接SQL Server2008的方法
Jul 26 PHP
PHP pthreads v3使用中的一些坑和注意点分析
Feb 21 PHP
TP5框架实现自定义分页样式的方法示例
Apr 05 PHP
php引用传递
Apr 01 PHP
Trying to clone an uncloneable object of class Imagic的解决方法
Jan 11 #PHP
win2003服务器使用WPS的COM组件的一些问题解决方法
Jan 11 #PHP
php通过COM类调用组件的实现代码
Jan 11 #PHP
关于IIS php调用com组件的权限问题
Jan 11 #PHP
Uncaught exception com_exception with message Failed to create COM object
Jan 11 #PHP
比file_get_contents稳定的curl_get_contents分享
Jan 11 #PHP
学习使用curl采集curl使用方法
Jan 11 #PHP
You might like
PHP sprintf()函数用例解析
2011/05/18 PHP
可以保证单词完整性的PHP英文字符串截取代码分享
2014/07/15 PHP
php计算年龄精准到年月日
2015/11/17 PHP
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.2 0
2008/03/22 Javascript
Jquery 弹出层插件实现代码
2009/10/24 Javascript
基于jQuery的表格操作插件
2010/04/22 Javascript
js 操作select和option常用代码整理
2012/12/13 Javascript
Node.js实现批量去除BOM文件头
2014/12/20 Javascript
JS两个数组比较,删除重复值的巧妙方法(推荐)
2016/06/03 Javascript
Vue中建立全局引用或者全局命令的方法
2017/08/21 Javascript
微信小程序的日期选择器的实例详解
2017/09/29 Javascript
vue2 router 动态传参,多个参数的实例
2017/11/10 Javascript
完美解决linux下node.js全局模块找不到的情况
2018/05/16 Javascript
关于vue2强制刷新,解决页面不会重新渲染的问题
2019/10/29 Javascript
微信小程序后端实现授权登录
2020/02/24 Javascript
[42:35]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS OpTic
2018/03/31 DOTA
使用 Python 获取 Linux 系统信息的代码
2014/07/13 Python
Python求导数的方法
2015/05/09 Python
python版简单工厂模式
2017/10/16 Python
Python进程间通信Queue实例解析
2018/01/25 Python
Anaconda 离线安装 python 包的操作方法
2018/06/11 Python
Python 读取某个目录下所有的文件实例
2018/06/23 Python
Python XML转Json之XML2Dict的使用方法
2019/01/15 Python
Python使用crontab模块设置和清除定时任务操作详解
2019/04/09 Python
使用keras内置的模型进行图片预测实例
2020/06/17 Python
Julep官网:美容产品和指甲油
2017/02/25 全球购物
土耳其时尚购物网站:Morhipo
2017/09/04 全球购物
巴黎一票通:The Paris Pass
2018/02/10 全球购物
JD Sports马来西亚:英国领先的运动鞋和运动服饰零售商
2018/03/13 全球购物
巴西香水和化妆品购物网站:The Beauty Box
2019/09/03 全球购物
介绍一下linux文件系统分配策略
2013/02/25 面试题
init进程的作用
2015/08/20 面试题
爱耳日宣传活动总结
2014/07/05 职场文书
2014年销售经理工作总结
2014/12/01 职场文书
销售员岗位职责范本
2015/04/11 职场文书
为什么代码规范要求SQL语句不要过多的join
2021/06/23 MySQL