php怎么捕获异常? php怎么捕获异常? 有没有类似.net try catch机制? php不能逐行调试 蛋疼!------解决方案-------------------- 有的 写法一样 try { } catch (Exception $e) { print $e->getMessage(); } ------解决方案--------------------
引用:
有没有类似.net try catch机制?
这个真心有~
引用:
php不能逐行调试 蛋疼!
楼主没找对ide
------解决方案-------------------- 其实php的调试可以随时调,想在哪里调,最简单就是在哪里输出。当然zend-studio也提供了断点功能调试,但是远不如这样方便。
其实都各有各的好处,哥,还是从了吧。
------解决方案-------------------- #1 可爱北极熊 正解
------解决方案-------------------- 还需要在try{}语句块里抛出异常 throw new Exception('It is an exception!') ,然后由catch(Exception $e) 捕获。
------解决方案-------------------- 用echo来放点找异常,php没法啊
------解决方案-------------------- 那就去看php的error_log啊...会有各种详细的报错信息....还有啥可catch的...
------解决方案-------------------- 错误大体有两种,一种是php可以捕获到的,例如语法错误。还有一种,是逻辑上的错误,这种错误机器并不能捕获,所以才会用到try catch人为捕获。
我想你说的错误只是前一种,那么打开错误提示display_errors = On,就可以看到。
------解决方案-------------------- 置顶帖子里的基础问答里有 怎么打开错误提示的.
------解决方案-------------------- 还有set_exception_handle。
------解决方案-------------------- 你这段代码没异常,当然不会执行那句
引用:
PHP code try{ $a="sgfdfgdf"; $b= (int)$a; echo($b); } catch(exception $e){ echo("出错啦".$e->getMessage());//这里并木有执行啊 }
------解决方案-------------------- 咳咳,这个不是错,在php里, 自动转换
引用:
引用: 你这段代码没异常,当然不会执行那句 引用: PHP code try{ $a="sgfdfgdf"; $b= (int)$a; echo($b); } catch(exception $e){ echo("出错啦".$e->getMessage());//这里并木有执行啊 ……
------解决方案--------------------
引用:
整形转换错误 这还不是错误啊
在任何语言中,强制类型转换都不会是错误!
虽然有时你并没有得到期望的结果
------解决方案-------------------- php的错误异常和java的类似,不过一般都要自己去抛出:例子:
try{
$m = 0;
if($m throw new Exception('m='.$m.':小于零');
}
echo $m;
} catch(exception $e){
echo "错误[line->".($e->getLine())."]: ".($e->getMessage());
}
------解决方案-------------------- php弱类型 改变数据类型没有问题
------解决方案-------------------- 让除数为0 ,就会看到抛异常了
Stellungnahme: Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn