发现一非常诡异的提示。。。郁闷了一晚上了
时间:2009-01-12
来源:互联网
[php]
<?php
do {
echo "循环".++$a."<br>";
}while ($a<4)
?>
[/php]
运行的时候,是这个提示:
Notice: Undefined variable: a in F:\php\index.php on line 3
循环1
循环2
循环3
循环4
这个程序按理来说,没错误啊,但总是提示我“未定义的变量”,然后我在整个语句前加上一个
[php]
<?php
$a=0;
do {
echo "循环".++$a."<br>";
}while ($a<4)
?>
就不会有提示了。。。
不知道是不是我PHP配置的问题啊,这段程序即使不加定义变量a的声名,在大家的机器上都能通过,唯独我不能通过,但还能显示运行结果,真是郁闷的够呛,还希望高人来帮我解决啊
[/php]
作者: synw 发布时间: 2009-01-12
我在 C:\WINDOWS\PHP.INI 中发现了一条语句 ;error_reporting = E_ALL
我把此项功能给打开了,也就是说没有最前面的分号:error_reporting = E_ALL
打开后,就会出现“未定义的变量Undefined variable
关闭后,就没问题了: ;error_reporting = E_ALL
这下再运行就没出现问题,不过因为我对 PHP 也是刚刚接触,不知道把这项功能关闭后,会不会影响其它错误的提示
作者: synw 发布时间: 2009-01-12
我呢,是将;error_reporting = E_ALL前面的分号加上了,达到了预期效果(当然,在不知道是否影响其它错误正常显示的前提下)
还有另一种方法就是不用更改;error_reporting = E_ALL,而是直接在PHP语句的开始处加上一条语句:error_reporting(0);就把上述问题解决了。
虽说我刚接触PHP,而且对:error_reporting(0);还不是很了解,等我查完资料后,发上来,供向我一样的菜鸟参考。
在此非常感谢 PHP 群 48742277 中的 410932246 大虾,感谢所有在这个问题上帮我出主意的朋友
作者: synw 发布时间: 2009-01-12
作者: qloog 发布时间: 2009-01-12
value constant
0 不输出错误
1 E_ERROR
2 E_WARNING
4 E_PARSE
8 E_NOTICE
16 E_CORE_ERROR
32 E_CORE_WARNING
64 E_COMPILE_ERROR
128 E_COMPILE_WARNING
256 E_USER_ERROR
512 E_USER_WARNING
1024 E_USER_NOTICE
2047 E_ALL
2048 E_STRICT
作者: qloog 发布时间: 2009-01-12
作者: diarywu 发布时间: 2009-01-12
该结帖了
作者: goodokk 发布时间: 2009-01-13


作者: a28794708 发布时间: 2010-09-03
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28