16.3.5 获取错误发生所在行的函数
类似获取错误文件名称的办法,在程序中通过调用Exception类的成员函数getLine(),可以获取错误所在的行号,如代码16-5所示。
代码16-5 使用Exception类的成员函数getLine()获取发生错误的文件名16-5.php
01 <?php
02 $file='./test/readme.txt';//指定文件地址
03
04 try
05 {
06 if(is_dir($file))//判断是否是目录
07 {
08 echo'检测到目录';
09 }
10 else
11 {
12 //创建异常对象,错误信息将由Exception类的成员函数getMessage()返回
13 throw new Exception('未找到该目录或文件');
14 }
15 }
16 catch(Exception$e)
17 {
18 echo'捕获异常:'.$e->getMessage();
19 echo'<br/><br/>';
20 echo'错误所在文件:'.$e->getFile();
21 echo'<br/><br/>';
22 echo'错误所在行号:'.$e->getLine();
23 echo'<br/>===============================';
24 echo'<br/>';
25 }
26
27 echo'程序执行完毕';
28 ?>
【代码解析】这段代码在第22行,调用Exception类的成员函数getLine()获取异常发生所在的行号,其执行结果如图16-4所示。
共有条评论 网友评论