php下关于Cannot use a scalar value as an array的解决办法

yipeiwu_com7年前PHP代码库
今天在测试php程序的时候,出现了一个错误提示:Cannot use a scalar value as an array,这个错误提示前几天也出过,当时好像稍微调了一下就好了,也没深究,今天却又出现了。

不能再糊弄了,得找出原因和解决办法,于是我就去网上搜啊找啊,找了很久都没找到结果,不是网上搜不到这样的问题,而是很少有人做正面的准确的回答。最后这篇文章的一段文字让我一下子弄明白了怎么回事。

—————————————-
需要注意的是类型的转换:
如果一个变量名(如a)已经被定义为非数组类型,例如integer,那么a可以被转为floating point、string(甚至是object类型),但不可以是数组,即a[0]=1;是错误的,php会报出这样的警告“Cannot use a scalar value as an array“。即使a被定义为一维数组,也不能转为高维数组。
—————————————-
下面是别的网友发现的问题的解决方法:
看到这句话之后,我仔细检查了一下代码,发现我上面已经定义过的一个布尔型变量在下面被我直接当数组来调用了,所以就出现错误了。

如果已经定义了一个非数组元素并赋值,再把它当数组来用就会出现Cannot use a scalar value as an array的错误

如: var $i=1000;

$i[5]=345; // 此时会出错,

所以大家要放弃这个不规范的写代码方式。

相关文章

php防盗链的常用方法小结

1.简单防盗链 复制代码 代码如下: $ADMIN[defaulturl] = "http://jb51.net/404.htm";//盗链返回的地址 $okaysites = arra...

7个鲜为人知却非常实用的PHP函数

概述 PHP有着众多的内置函数,其中大多数函数都被开发者广发使用。但也有一些同样有用却被遗忘在角落,本文将介绍7个鲜为人知功能却非常酷的函数。 highlight_string() 当需...

PHP生成RSS文件类实例

本文实例讲述了PHP生成RSS文件类文件。分享给大家供大家参考。具体如下: PHP RSS 生成类实例代码如下: 复制代码 代码如下:<?php if (defined(...

php检测图片主要颜色的方法

本文实例讲述了php检测图片主要颜色的方法。分享给大家供大家参考。具体实现方法如下: $i = imagecreatefromjpeg("image.jpg"); for ($x=0...

PHP队列原理及基于队列的写文件案例

PHP队列原理及基于队列的写文件案例

本文实例讲述了PHP队列原理及基于队列的写文件案例。分享给大家供大家参考,具体如下: 队列是一种线性表,按照先进先出的原则进行的: 入队: 出队: PHP实现队列:第一个元素作为队头...