php中的notice,PHP中出现Notice: Undefined index的三种解决办法

前一段做的一个PHP程序在服务器运行正常,被别人拿到本机测试的时候总是出现Notice: Undefined index:这样的警告,这只是一个因为PHP版本不同而产生的警告(NOTICE或者WARNING),而非错误(ERROR)。PHP中的变量在不声明的情况下使用的时候,PHP4运行正常,但

前一段做的一个PHP程序在服务器运行正常,被别人拿到本机测试的时候总是出现“Notice: Undefined index:”这样的警告,这只是一个因为PHP版本不同而产生的警告(NOTICE或者WARNING),而非错误(ERROR)。PHP中的变量在不声明的情况下使用的时候,PHP4运行正常,但是到了PHP5环境下就会出现上述的警告或者提示。经过搜索查询,总结出来以下三种解决Notice: Undefined index的方法。 第一种方法:修改PHP配置文件,屏蔽掉此类警告和提示 修改php.ini配置文件,修改error_reporting为error_reporting = E_ALL & ~E_NOTICE 。这样程序中存在NOTICE和WARNING的不足之处的时候会被忽略,当然这对于新手来说并不合适,不仅不方便调试程序,而且不利于养成好的代码习惯。 第二种方法:对每个变量进行初始化 赋空值或者任意值即可,不影响运行。这对于变量比较多的程序来说比较繁琐,不过如果每次都提前设置下变量也是不错的习惯,例如: $blank = “”;$price = “15″:$car = “Truck”: 第三种方法:每个变量前面加上“@” 很容易,也很实用,一般第二种和第三种搭配使用。

@修饰符禁止函数调用导致的警告,不过这个修饰符无法禁止显示错误。

方法一、修改php.ini,将error_reporting改成E_ALL & ~E_NOTICE

方法二、在php页面一开头写上:error_reporting(E_ALL & ~E_NOTICE);  屏蔽

方法三、注意自己的代码规范,不要使用未定义的变量

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

方法一: 在php中,抓取https的网站,提示如下的错误内容: Warning: file_get_contents() [function.file-get-contents]: failed to open stream: Invalid argument in I:Webmyphpa.php on line 16 打开php.ini文件找到 ;extension=php_openssl.dll ,去掉
1、字符 对于单个字符,通常按字面意义表示,字符指出其后的字符为特殊字符,所以不做字面意义解释,而解释为特殊字符。 例如/b/相当于字符b,通过在b前面加一个反斜杠,即为//,则该字符变成特殊字符,表示匹配一个单词的分界线。对于几个字符,通常说明是特殊
本文中的所使用的环境如下 php版本:php7.4 phpword版本:0.18.3 安装: composer require phpoffice/phpword 1、使用模式一: 模板生成word 使用场景: 适合有一套固定的world文档模板,只有几个关键的地方需要改变 使用方式: 下面介绍几行代码就足够完成
Mysqli是php5之后才有的功能,没有开启扩展的朋友可以打开您的php.ini的配置文件。 查找下面的语句:;extension=php_mysqli.dll将其修改为:extension=php_mysqli.dll即可。 相对于mysql有很多新的特性和优势 (1)支持本地绑定、准备(prepare)等语法 (2)
对于php访问url的方法比价多,对于一些防护比较低的网站,可以轻易的实现刷网站浏览量的可能 1.fopen方式: function access_url($url) { if ($url=='') return false; $fp = fopen($url, 'r') or exit('Open url faild!'); if($fp){ while(!feof($fp)) { $f
echo date(Y-m-d); 2012-08-08 echo date(Y-n-j); 2012-8-8 以下为参数详解(转): a - am 或是 pm A - AM 或是 PM d - 几日,二位数字,若不足二位则前面补零; 如: 01 至 31 D - 星期几,三个英文字母; 如: Fri F - 月份,英文全名; 如: January h - 12 小时