文章教程

16.2.2运行时错误的处理

9/17/2020 9:26:54 PM 人评论 次浏览

16.2.2 运行时错误的处理

语法错误可以在PHP分析器执行脚本时检测到,而运行时错误就不那么简单了,下面通过实例来说明。比如有如下所示的一段PHP代码。


<?php

$i=10;

$j=0;

$k=$i/$j;

?>


这段代码本身没有任何语法错误,但是,这段代码将0作为除数,所以会产生类似下面的警告(Warring)信息。


Warning:Division by zero in D:\Apache2\htdocs\webroot\ch16\test.php on line 4


又如下面的这段代码。


<?php

$rest=find_somethng();

?>


这段代码调用一个不存在或者没有定义过的函数find_someting(),会产生类似下面的致命错误(Fatal error)信息。


Fatal error:Call to undefined function find_something()in D:\Apache2\htdocs\webroot\ch16\test.php on line 2


这段代码报告错误:Call to undefined function find_someting(),其含义是:调用一个未定义的函数find_something()。常见的运行时错误有以下几类。

❑读写一个不存在或者无权限的文件。

❑调用一个未定义的函数或传入函数的参数问题。

❑连接数据库异常。

❑没有获取到INPUT数据。

再举一个调用函数的运行时错误,如下代码所示。


<?php

$rest=substr();

?>


读者已经知道PHP预定义函数substr()至少应该传入两个参数,但这段代码调用函数substr()没有使用任何参数,这时会得到一个类似下面的警告信息。这段警告信息指明,函数substr()参数数量错误。


Warning:Wrong parameter count for substr()in D:\Apache2\htdocs\webroot\ch16\test.php on line 2


教程类别