E_ALL - 所有的错误和警告(不包括 E_STRICT)
E_ERROR - 致命性的运行时错误
E_WARNING - 运行时警告(非致命性错误)
E_PARSE - 编译时解析错误
E_NOTICE - 运行时提醒(这些经常是你代码中的bug引起的,也可能是有意的行为造成的。)
E_STRICT - 编码标准化警告,允许PHP建议如何修改代码以确保最佳的互操作性向前兼容性。
E_CORE_ERROR - PHP启动时初始化过程中的致命错误
E_CORE_WARNING - PHP启动时初始化过程中的警告(非致命性错)
E_COMPILE_ERROR - 编译时致命性错
E_COMPILE_WARNING - 编译时警告(非致命性错)
E_USER_ERROR - 用户自定义的错误消息
E_USER_WARNING - 用户自定义的警告消息
E_USER_NOTICE - 用户自定义的提醒消息
Parse error: syntax error, unexpected
$end
in
You’re most likely missing a } somewhere. Make sure that each { you have is also closed with a }.
这东西是忘记了“}”,请检查“{}”是否一一对应了。
Parse error: syntax error, unexpected T_STRING, expecting ‘,’
or
‘;’ in..
There may be double quotes within double quotes. They either need to be escaped
or
brought to single quotes. It’s also possible that a
new
PHP statement was started before the previous was finished.
出现这种问题往往是在双引号中又有了双引号,可能需要在双引号前加上转义符或者使用单引号。通常问题在显示的行数之上一行。或者是标点符号为中文的,要么就是少写了些标点符号
Warning: Cannot add header information - headers already sent by (output started at /home/vnessa5/www/errors.php:9) in….
Warning: Cannot send session cache limiter - headers already sent in somefile.php on line 222
头信息错误
一 般情况下,HTML的解析都会在PHP前面,而代码尝试在发送header相关信息时,你已经有了HTML输出。所以你在发现有这种情况出现的时候,请检 查你的代码以保证没有HTML代码或者甚至是一个空格。一般有两个解决方案。1)在文件头部设定HEADER标签。2)在你要输出的页面前插入 HEADER标签的内容。
mySql 资源错误
Warning: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in…
通常,在进行msyql_query后,你需要对取得的数据进行遍历,如果出现上面错误时,你得检查一下你的
$result
是否是一个resource,这种情况在SQL查询语句错误(但错误没有被抛出)的情况下,所以,发现此问题时,可以考虑打印出SQL,到PHPMYDMIN里执行一下看看是怎么回事。
Supplied argument is not a valid stream resource…
这个问题的情况通常是你代码中指定的表或者资源不存在于该数据库
文件流错误
Warning: failed to open stream…
这两个问题的出现,通常是文件没有找到或者文件不能被
require
和
include
。(上面的英文我觉得不太准,个人认为应该是:先检查一下文件是否确实存在,检查文件的路径,当然,还得看一下php.ini的include_path,如果这些都检查过了。那么尝试用绝对路径加载文件)
Warning:
fopen
(…): failed to open stream: Permission denied in…
文件没有权限被读取,如果你想要你的文件被读取,设置文件权限为775,如果该文件需要被执行,那么就设置成777。否则设置用户权限/组为:
Warning: <…> is not a valid stream resource…
Warning:
fread
(): supplied argument is not a valid stream resource in…
这也是一个常见错误,当你使用
fopen
(),
fread
(),
feof
()等函数时,就可能会出现,错误原因一般是
fopen
()或者其他函数打开文件失败,但错误信息被屏蔽,如
$fp
[email protected]
fopen
(
‘file.txt‘
);,在这种情况下,再使用
fread
()读取时,就会出现上面的出错信息。
Warning: Failed opening….
Warning: Failed opening ‘…’
for
inclusion (include_path=’.:/usr/local/lib/php’) in Unknown on line 0
请确认文件是否有读写权限并且路径是正确的。如果不是,你需要把路径加载到你的PHP代码或者.htaccess文件里
include
(”/path/to/files”);
error_reporting
() 设置 PHP 的报错级别并返回当前级别。
error_reporting
(E_ALL ^ E_NOTICE);
//除了notice的错误以外全部都显示出来
error_reporting
(0);
//禁用错误报告
error_reporting
(E_ERROR | E_WARNING | E_PARSE);
//报告运行时错误
error_reporting
(E_ALL);
//报告所有错误
文件权限 :
比如:777
第一位数字:所有者权限
第二位数字:用户组权限
第三位数字:其他用户权限
r: 读取权限是4
w: 写入权限是2
x: 执行权限是1