首頁 > 後端開發 > php教程 > 出错:Use of undefined constant allowhtml 与Undefined index

出错:Use of undefined constant allowhtml 与Undefined index

WBOY
發布: 2016-06-13 12:26:03
原創
1150 人瀏覽過

报错:Use of undefined constant allowhtml 与Undefined index
运行程序报如下错误,这是哪里出问题了?
Notice: Use of undefined constant allowhtml - assumed 'allowhtml' in /home/wwwroot/kaimen360_com/public_html/uc_client/model/base.php on line 69

Notice: Undefined index: allowhtml in /home/wwwroot/kaimen360_com/public_html/uc_client/model/base.php on line 69
------解决思路----------------------
使用了未经定义(不存在)的关联键
错误信息已给出的出错位置 /home/wwwroot/kaimen360_com/public_html/uc_client/model/base.php on line 69
麻烦你自己看一下
------解决思路----------------------
提示你,在数组中没有那个键名(不存在)为 allowhtml 的数据
------解决思路----------------------
数组中allowhtml的键值不存在而被使用了。
例如:

<br /><?php<br />$arr = array('a'=>123);<br />echo $arr['allowhtml'];  // 这样就会有提示未定义了。<br />?><br />
登入後複製
登入後複製

------解决思路----------------------
$a = array();
echo $a[allowhtml];

关联键名没有用引号括起(不是字符串),php 会先检查是否为常量,由于没有定义,所以有
Notice: Use of undefined constant allowhtml - assumed 'allowhtml' in ...

然后按字符串检查数组中是否有同名项,因为没有,所以有
Notice: Undefined index: allowhtml in ...

这是因为你没有书写健壮的代码造成的

php.ini 中默认 error_reporting = E_ALL
你可改为 error_reporting = E_ALL ^ E_NOTICE
或在程序开始处执行 error_reporting(E_ALL ^ E_NOTICE);
来补偿你的过失


------解决思路----------------------
引用:
Quote: 引用:

数组中allowhtml的键值不存在而被使用了。
例如:
<br /><?php<br />$arr = array('a'=>123);<br />echo $arr['allowhtml'];  // 这样就会有提示未定义了。<br />?><br />
登入後複製
登入後複製



怎么解决呀?
我迁移了服务器就报这样的错误,没有迁移服务器前好好的,这是为什么?


那是因为你的旧服务器设置了不输出notice,warning的错误,所以不显示。
你可以在程序顶加上
error_reporting(E_ALL^E_NOTICE^E_WARNING);
<br /><?php<br />error_reporting(E_ALL^E_NOTICE^E_WARNING); // 加了这句就可以屏蔽警告与提示的错误。<br />$arr = array('a'=>123);<br />echo $arr['allowhtml']; // 这里不会出现notice<br />?><br />
登入後複製

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板