16.3.5获取错误发生所在行的函数
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所示。
