php?抛异常

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-20 12:46:56870검색

php如何自定义异常类,捕获异常和抛出异常.
或者给个例子参考下


回复讨论(解决方案)

try {      throw new Exception($error);  } catch (Exception $e) {      echo $e->getMessage();  }

try{
throw new Exception($error);
}catch(Exception $e){
 echo $e->getCode();
}

set_exception_handler('myException');test(-1);function test($a){	if($a < 0){		throw new Exception('error');	}	return $a;}function myException($e){	$msg='code : '.$e->getCode().'<br>message : '.$e->getMessage();	echo $msg;}

http://www.php.net/manual/zh/language.exceptions.php

function inverse($x) {    if (!$x) {        throw new Exception('Division by zero.');    }    return 1/$x;}try {    echo inverse(5) . "\n";    echo inverse(0) . "\n";} catch (Exception $e) {    echo 'Caught exception: ',  $e->getMessage(), "\n";}// Continue executionecho "Hello World\n";以上例程会输出:0.2Caught exception: Division by zero.Hello World

自定义一个异常类

<?phpclass MyException extends Exception { }class Test {    public function testing() {        try {            try {                throw new MyException('foo!');            } catch (MyException $e) {                // rethrow it                throw $e;            }        } catch (Exception $e) {            var_dump($e->getMessage());        }    }}$foo = new Test;$foo->testing();?>

try {  

    throw new Exception($error);  

} catch (Exception $e) {  

    echo $e->getMessage();  

}

楼上都是正解

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.