PHP提示 Notice: Undefined variable
PHP提示Notice: Undefined variable,意思是:你的程序中有未定义的变量
为什么在其他地方好好的程序,换个环境报这个Notice,因为php.ini提醒级别设置的问题
场景复原:
举例,打开php.ini配置文件,搜索error_reporting,让这个配置的值如下图

重启apache服务器
新建php文件,代码如下:
<?php
header("Content-type:text/html;charset=UTF-8");
echo $aaa;
?>

就是程序在用到变量$aaa的时候,却发现$aaa没有被定义过。
那怎么解决呢?
方法1:对自己要求严格一点,每个变量都声明下,而不是直接用,代码加一句,如下:
<?php
header("Content-type:text/html;charset=UTF-8");
$aaa = null; //新加的
echo $aaa;
?>
方法2:文件中设置不提醒notice,代码头部加上ini_set("error_reporting",E_ALL & ~E_NOTICE); 【注意:E_ALL & ~E_NOTICE是不带引号的,不是字符串!!!】如下:
<?php
ini_set("error_reporting",E_ALL & ~E_NOTICE);
header("Content-type:text/html;charset=UTF-8");
echo $aaa;
?>
方法3:修改php.ini配置,重启服务器error_reporting = E_ALL & ~E_NOTICE

上述三种方法,任意一种方法都可以解决这个问题(浏览器端不输出Notice: Undefined variable,同时日志里也不记录这个问题)。
但是,如果是在php.ini中,设置display_errors = Off,这样也不显示,但是日志里会有很多notice的记录(我的日志是开发环境默认的在apache的error.log文件中)

为什么呢?因为display_errors = Off是服务器上这样设置,免得暴露太多文件路径等信息被黑客攻击,没有根源上解决问题,错误记录在日志里。
PHP提示 Notice: Undefined variable的更多相关文章
- php提示Notice: Undefined index解决方法
php提示Notice: Undefined index问题,Undefined index:是指你的代码里存在:“变量还未定义.赋值就使用”的错误,这个不是致命错误,不会让你的php代码运行强行中止 ...
- PHP获取表单并使用数组存储 疯狂提示 Notice: Undefined offset
$answer=array(); $answer[0]='0'; for($i=1;$i<=$QUESTION_COUNT;$i++){ $answer[$i]=$_POST[(string)$ ...
- PHP的Undefined variable错误怎么解决?
在调试程序时,有可能会出现Undefined variable错误,一般情况下php是不需要定义变量的,但如果服务器什么都报错的,就会出现错误,我们经常接收表单POST过来的数据时报Undefined ...
- Notice: Undefined offset 的解决方法
Notice: Undefined offset: 1 in D:\wwwroot\wr\askseo\404.php on line 5 Notice: Undefined offset: 2 in ...
- gVim安装vim-template插件后提示Undefined variable vim_template_subtype/Press ENTER or type command to continue
Win7 64位 gVim:version 8.1.1234 vim-template:github链接 安装方式: 直接下载master的zip压缩包,解压后放入本地gVim安装目录的plugin, ...
- Notice: Only variable references should be returned by reference(PHP版本兼容性问题)
摘自:http://sushener.spaces.live.com/blog/cns!BB54050A5CFAFCDD!435.entry PHP5一个很让人恼火的一点就是BC(向后兼容)不是很理想 ...
- PHP LINUX Notice: undefined $_GET完美解决方法
PHP Notice: undefined 平时用$_GET[‘xx’] 取得参数值时,如果之前不加判断在未传进参数时会出现这样的警告: PHP Notice: undefined index xxx ...
- PHP中出现Notice: Undefined index的三种解决办法
前一段做的一个PHP程序在服务器运行正常,被别人拿到本机测试的时候总是出现“Notice: Undefined index:”这样的警告,这只是一个因为PHP版本不同而产生的警告(NOTICE或者WA ...
- (转载)Undefined variable: PHP_SELF的问题解决方法
(转载)http://blog.sina.com.cn/s/blog_4ab014680100gx43.html 在PHP使用了$PHP_SELF函数时,出现以下错误 Undefined variab ...
随机推荐
- 深度相机Astra Pro测试教程
最近在微信群内,很多群友在群友的推荐下,购买了Astra pro的深度相机,价格地道,物超所值!群友反馈积极,所以这里出一波简单的教程. 以下内容知识抛砖引玉,主要讲解windows下和Ubunt ...
- C++内存管理1-64位系统运行32位软件会占用更多的内存吗?
随着大容量内存成为电脑平台常规化的配置,在配置组装机时很多的用户都会选择8GB甚至是16GB的容量规格内存使用在自己的机器上,如果要将这8GB甚至是16GB的内容在系统使用时能充分利用起来的话,你平台 ...
- xcode简单教程
1.使用Xcode软件.Xcode是一个苹果系统上的集成开发环境(IDE),就是说用Xcode就能编写C语言程序,并编译运行.也能开发ios程序等,是一种软件.在windows上类似这种能编c语言的还 ...
- JAVA中用StopWatch计算代码耗时的方法
StopWatch翻译过来的意思就是秒表,其作用也就像我们平时使用的秒一样.spring中就有提供这个工具类(org.springframework.util.StopWatch). 日常开发中,经常 ...
- [原]部署kubernetes dashboard(二)
####################### 以下为声明 ##################### 此文档是之前做笔记在两台机上进行的实践,kubernetes处于不断开发阶段 不能保证每 ...
- idea 打开eclipse 项目 编译出现 Error:(1, 1) java: 非法字符: ‘\ufeff’
原因分析: Eclipse可以智能的把UTF-8+BOM文件转为普通的UTF-8文件,IDEA没有这个智能转换. 解决: 1 用IDEA转换,先转换为GBK,再转回UTF-8
- javascript中var、let、const的区别
这几天修改别人的js,发现声明变量有的用var,有的用let,那它们有什么区别呢? javascript中声明变量的方式有:var.let.const 1.var (1)作用域: 整个函数范围内,或者 ...
- lnmp卸载删除多余的php版本
/etc/init.d/php-fpm5.3 stoprm -rf /usr/local/php5.3rm -f /etc/init.d/php-fpm5.3rm -f /usr/local/ngin ...
- java内存模型,内存区域
Java虚拟机内存区域总结:Java虚拟机相当于一个抽象的计算机操作系统, 其管理的内从区域大体上可以分为栈和堆,就像c或c++中对内存的分类一样, 但这样的分类对于Java虚拟机来说太过粗浅, 实际 ...
- python代码git上传
python代码git上传 1.每次上传代码之前需要先拉取线上的代码 操作如下: