PHP Undefined index报错的修复方法


Posted in PHP onJuly 17, 2011

虽然可以通过设置错误显示方式来隐藏这个提示,但是这样也有隐患,就是在服务器的日志中会记录这些提示,导致日志文件异常庞大。

首先,这个不是错误,是warning。所以如果服务器不能改,每个变量使用前应当先定义。网上流行的解决方法有以下几种:

方法1:服务器配置修改。修改php.ini配置文件,error_reporting = E_ALL & ~E_NOTICE。
方法2:对变量进行初始化,规范书写(比较烦琐,因为有大量的变量)。但还没有找到好定义方法,望大家指教。
方法3:每个文件头部加上:error_reporting(0); 如果不行,只有打开php.ini,找到display_errors,设置为display_errors = Off。以后任何错误都不会提示。
方法4 :做判断:isset($_GET["page"]) if-else判断。或者加上'@'表示这行如果有错误或是警告不要输出。如:@$page=$_GET["page"]
方法5:file1.php文件把$xx变量付一个值,用post 传递给file2.php,如果file2.php没有$xx的定义,而直接使用$yy=$xx; 系统就会报错:"undifined variaable $xx", 如果file2.php的文件开始用$xx="";定义,那么file1.php的$xx值就传不过来了。file2.php里可以这样:if(!isset($xx)) $xx="";
如果你觉得上面的方法不怎么好用,也可以用下面的方法:

function _get($str){ 
$val = !empty($_GET['str']) ? $_GET['str'] : null; 
return $val; 
}

定义这样的一个函数,然后在用的时候,直接用 _get('str') 代替 $_GET['str'] 就行啦~这样会方便些。
PHP 相关文章推荐
PHP+MYSQL的文章管理系统(二)
Oct 09 PHP
亲密接触PHP之PHP语法学习笔记1
Dec 17 PHP
PHP的开发框架的现状和展望
Mar 16 PHP
dedecms模板标签代码官方参考
Mar 17 PHP
PHP 字符截取 解决中文的截取问题,不用mb系列
Sep 29 PHP
PHP分页效率终结版(推荐)
Jul 01 PHP
phpmailer在服务器上不能正常发送邮件的解决办法
Jul 08 PHP
php简单实现屏蔽指定ip段用户的访问
Apr 29 PHP
WordPress中用于获取及自定义头像图片的PHP脚本详解
Dec 17 PHP
Yii2 rbac权限控制之rule教程详解
Jun 23 PHP
Yii框架中sphinx索引配置方法解析
Oct 18 PHP
PHP递归实现快速排序的方法示例
Dec 18 PHP
php max_execution_time执行时间问题
Jul 17 #PHP
PHP写杨辉三角实例代码
Jul 17 #PHP
php中截取中文字符串的代码小结
Jul 17 #PHP
9个PHP开发常用功能函数小结
Jul 15 #PHP
PHP 字符串正则替换函数preg_replace使用说明
Jul 15 #PHP
php入门学习知识点八 PHP中for循环基本应用之九九乘法口绝表
Jul 14 #PHP
php入门学习知识点七 PHP函数的基本应用
Jul 14 #PHP
You might like
用PHP调用数据库的存贮过程!
2006/10/09 PHP
刚才在简化php的库,结果发现很多东西
2006/12/31 PHP
php实现最简单的MVC框架实例教程
2014/09/08 PHP
两种php去除二维数组的重复项方法
2015/11/04 PHP
javascript椭圆旋转相册实现代码
2012/01/16 Javascript
js中创建对象的几种方式示例介绍
2014/01/26 Javascript
对 jQuery 中 data 方法的误解分析
2014/06/18 Javascript
jQuery代码实现表格中点击相应行变色功能
2016/05/09 Javascript
AngularJS入门教程之静态模板详解
2016/08/18 Javascript
JavaScript trim 实现去除字符串首尾指定字符的简单方法
2016/12/27 Javascript
纯原生js实现table表格的增删
2017/01/05 Javascript
JavaScript Canvas绘制圆形时钟效果
2020/08/20 Javascript
vue filters的使用详解
2018/06/11 Javascript
浅谈Vue.use的使用
2018/08/29 Javascript
iView框架问题整理小结
2018/10/16 Javascript
Vue axios 将传递的json数据转为form data的例子
2019/10/29 Javascript
[00:12]2018DOTA2亚洲邀请赛 sylar表现SOLO技艺
2018/04/06 DOTA
Python实现的微信公众号群发图片与文本消息功能实例详解
2017/06/30 Python
python读取与写入csv格式文件的示例代码
2017/12/16 Python
对Python3 解析html的几种操作方式小结
2019/02/16 Python
Python基于BeautifulSoup和requests实现的爬虫功能示例
2019/08/02 Python
Django框架序列化与反序列化操作详解
2019/11/01 Python
详解Python实现进度条的4种方式
2020/01/15 Python
python 爬虫 实现增量去重和定时爬取实例
2020/02/28 Python
pymysql 插入数据 转义处理方式
2020/03/02 Python
在django admin中配置搜索域是一个外键时的处理方法
2020/05/20 Python
pyCharm 实现关闭代码检查
2020/06/09 Python
adidas旗下高尔夫装备供应商:TaylorMade Golf(泰勒梅高尔夫)
2016/08/28 全球购物
Whittard官方海外旗舰店:英国百年茶叶品牌
2018/02/22 全球购物
消防宣传口号
2014/06/16 职场文书
拾金不昧通报表扬范文
2015/05/05 职场文书
2015年见习期个人工作总结
2015/05/28 职场文书
再读《皇帝的新衣》的读后感悟!
2019/08/07 职场文书
简单实现一个手持弹幕功能+文字抖动特效
2021/03/31 HTML / CSS
怎么用Python识别手势数字
2021/06/07 Python
mysql使用instr达到in(字符串)的效果
2022/04/03 MySQL