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获取某个目录大小的代码
Sep 10 PHP
php smarty的预保留变量总结
Dec 04 PHP
php 删除cookie和浏览器重定向
Mar 16 PHP
php中get_headers函数的作用及用法的详细介绍
Apr 27 PHP
解析在apache里面给php写虚拟目录的详细方法
Jun 24 PHP
php检测文件编码的方法示例
Apr 25 PHP
php实现的替换敏感字符串类实例
Sep 22 PHP
php中opendir函数用法实例
Nov 15 PHP
smarty简单应用实例
Nov 03 PHP
thinkPHP5.0框架应用请求生命周期分析
Mar 25 PHP
php实现的后台表格分页功能示例
Oct 23 PHP
Yii redis集合的基本使用教程
Jun 14 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获得文件大小和文件创建时间的方法
2015/03/13 PHP
php开发工具有哪五款
2015/11/09 PHP
PHPExcel笔记, mpdf导出
2016/05/03 PHP
php基于自定义函数记录log日志方法
2017/07/21 PHP
laravel5 Eloquent 实现事务方式
2019/10/21 PHP
测试JavaScript字符串处理性能的代码
2009/12/07 Javascript
关于document.cookie的使用javascript
2010/10/29 Javascript
详解 javascript中offsetleft属性的用法
2015/11/11 Javascript
javascript生成随机数方法汇总
2015/11/12 Javascript
使用EVAL处理jqchart jquery 折线图返回数据无效的解决办法
2015/11/26 Javascript
CKEditor无法验证的解决方案(js验证+jQuery Validate验证)
2016/05/09 Javascript
javaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序整理总结
2016/10/10 Javascript
Vue 单文件中的数据传递示例
2017/03/21 Javascript
Bootstrap 模态框(Modal)带参数传值实例
2017/08/20 Javascript
JS使用正则表达式获取小括号、中括号及花括号内容的方法示例
2018/06/01 Javascript
深入理解Vue父子组件生命周期执行顺序及钩子函数
2018/08/12 Javascript
js实现简单选项卡功能
2020/03/23 Javascript
vue 详情跳转至列表页实现列表页缓存
2019/03/27 Javascript
JavaScript实现页面高亮操作提示和蒙板
2021/01/04 Javascript
使用python搭建Django应用程序步骤及版本冲突问题解决
2013/11/19 Python
Python采用raw_input读取输入值的方法
2014/08/18 Python
python实现备份目录的方法
2015/08/03 Python
Python ldap实现登录实例代码
2016/09/30 Python
python实现数据导出到excel的示例--普通格式
2018/05/03 Python
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
对Python3之进程池与回调函数的实例详解
2019/01/22 Python
python多环境切换及pyenv使用过程详解
2019/09/27 Python
详解python中各种文件打开模式
2020/01/19 Python
python如何实现word批量转HTML
2020/09/30 Python
python 实现弹球游戏的示例代码
2020/11/17 Python
HTML5 canvas基本绘图之绘制阴影效果
2016/06/27 HTML / CSS
拾金不昧锦旗标语
2014/06/27 职场文书
商业企业管理专业求职信
2014/07/10 职场文书
防卫过当辩护词
2015/05/21 职场文书
推销搭讪开场白
2015/05/28 职场文书
新入职员工工作总结
2015/10/15 职场文书