***PHP Notice: Undefined index: ..问题的解决方法

简介: 首先,这个不是错误,是warning。所以如果服务器不能改,每个变量使用前应当先定义。       方法1:服务器配置修改     修改php.ini配置文件,error_reporting = E_ALL & ~E_NOTICE       方法2:对变量进行初始化,规范书写(比较烦琐,因为有大量的变量)。

 首先,这个不是错误,是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="";

 


 

 

PHP error_reporting() 错误控制函数功能详解

 

定义和用法:
error_reporting() 设置 PHP 的报错级别并返回当前级别。
 
函数语法:
error_reporting(report_level)
 
如果参数 level 未指定,当前报错级别将被返回。下面几项是 level 可能的值:
值 常量 描述
1 E_ERROR 致命的运行错误。错误无法恢复,暂停执行脚本。
2 E_WARNING 运行时警告(非致命性错误)。非致命的运行错误,脚本执行不会停止。
4 E_PARSE 编译时解析错误。解析错误只由分析器产生。
8 E_NOTICE 运行时提醒(这些经常是你代码中的bug引起的,也可能是有意的行为造成的。)
16 E_CORE_ERROR PHP启动时初始化过程中的致命错误。
32 E_CORE_WARNING PHP启动时初始化过程中的警告(非致命性错)。
64 E_COMPILE_ERROR 编译时致命性错。这就像由Zend脚本引擎生成了一个E_ERROR。
128 E_COMPILE_WARNING 编译时警告(非致命性错)。这就像由Zend脚本引擎生成了一个E_WARNING警告。
256 E_USER_ERROR 用户自定义的错误消息。这就像由使用PHP函数trigger_error(程序员设置E_ERROR)
512 E_USER_WARNING 用户自定义的警告消息。这就像由使用PHP函数trigger_error(程序员设定的一个E_WARNING警告)
1024 E_USER_NOTICE 用户自定义的提醒消息。这就像一个由使用PHP函数trigger_error(程序员一个E_NOTICE集)
2048 E_STRICT 编码标准化警告。允许PHP建议如何修改代码以确保最佳的互操作性向前兼容性。
4096 E_RECOVERABLE_ERROR 开捕致命错误。这就像一个E_ERROR,但可以通过用户定义的处理捕获(又见set_error_handler())
8191 E_ALL 所有的错误和警告(不包括 E_STRICT) (E_STRICT will be part of E_ALL as of PHP 6.0)

 

例子:
任意数目的以上选项都可以用“或”来连接(用 OR 或 |),这样可以报告所有需要的各级别错误。
例如,下面的代码关闭了用户自定义的错误和警告,执行了某些操作,然后恢复到原始的报错级别:

<?php
//禁用错误报告
error_reporting (0);
 
//报告运行时错误
error_reporting (E_ERROR | E_WARNING | E_PARSE);
 
//报告所有错误
error_reporting (E_ALL);
?>
如何联系我:【万里虎】www.bravetiger.cn 【QQ】3396726884 (咨询问题100元起,帮助解决问题500元起) 【博客】http://www.cnblogs.com/kenshinobiy/
目录
相关文章
|
6月前
|
SQL 安全 程序员
PHP编程中的关键性错误及解决方法
在PHP编程过程中,程序员常常会遇到一些关键性错误,这些错误可能会导致程序运行异常甚至崩溃。本文将重点探讨PHP编程中常见的关键性错误,并提供解决方法,帮助程序员更好地应对这些问题,提高编程效率和代码质量。
37 1
没有可用的软件包 php5-mysql,但是它被其它的软件包引用了。解决方法
没有可用的软件包 php5-mysql,但是它被其它的软件包引用了。解决方法
225 0
|
3月前
|
应用服务中间件 Linux 网络安全
【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
【Azure 应用服务】PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
|
5月前
|
应用服务中间件 Linux 网络安全
PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
在Azure App Service for Linux上部署的PHP应用遇到上传文件超过1MB时出现413 Request Entity Too Large错误的解决之法
222 0
|
PHP Windows
windows下 Call to undefined function posix_getpid() in ……\Workerman\Worker.php 的解决方法
windows下 Call to undefined function posix_getpid() in ……\Workerman\Worker.php 的解决方法
184 0
windows下 Call to undefined function posix_getpid() in ……\Workerman\Worker.php 的解决方法
|
PHP
php模版引擎smarty出现Undefined index的解决方案
php模版引擎smarty出现Undefined index的解决方案
107 0
|
SQL 安全
dedecms cookies泄漏导致SQL漏洞 article_add.php 的解决方法
漏洞名称:dedecms cookies泄漏导致SQL漏洞 补丁文件:/member/article_add.php 补丁来源:云盾自研 漏洞描述:dedecms的文章发表表单中泄漏了用于防御CSRF的核心cookie,同时在其他核心支付系统也使用了同样的cookie进行验证,黑客可利用泄漏的cookie通过后台验证,进行后台注入。
102 0
|
安全 PHP 数据库
php环境无法上传文件的解决方法
php环境无法上传文件的解决方法
226 0
PHP实现截取中文字符串不出现?号的解决方法
PHP实现截取中文字符串不出现?号的解决方法
123 0
|
PHP
PHP使用explode报错:Undefined offset: 1
PHP使用explode报错:Undefined offset: 1
164 0