downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

Exception::getMessage> <Exception
[edit] Last updated: Fri, 24 May 2013

view this page in

Exception::__construct

(PHP 5 >= 5.1.0)

Exception::__construct异常构造函数

说明

public Exception::__construct() ([ string $message = "" [, int $code = 0 [, Exception $previous = NULL ]]] )

异常构造函数。

参数

message

抛出的异常消息内容。

code

异常代码。

previous

异常链中的前一个异常。

更新日志

版本 说明
5.3.0 增加previous参数。

注释

Note:

The message is NOT binary safe.



add a note add a note User Contributed Notes Exception::__construct - [2 notes]
up
2
mario dot mueller at twt dot de
4 years ago
This would be nice for handling ZendFramework Exceptions to your own framwork or CMS Exceptions:

<?php
try
{
   
$oZFResponse = $oZFHttpClient->request();
}
catch(
Zend_Http_Exception $exZFHttpEx)
{
    throw new
Runtime_{$oZFHttpEx->getCode()}_Exception('some ErrorMailing Message', 500, $oZFHttpEx);
}

?>

Regards,
Mario
up
0
mattsch at gmail dot com
4 months ago
Be aware that while $previous is quite useful in providing exception chaining and better traceability, none of the internal php exceptions (e.g. PDOException, ReflectionException, etc) are called internally within php with $previous in mind. 

So if your code throws an exception, recovers from it, then catches one of these internal php exceptions, recovers from it and throws another exception, you will not know the first exception that was thrown when calling getPrevious.

See: https://bugs.php.net/bug.php?id=63873

 
show source | credits | stats | sitemap | contact | advertising | mirror sites