PHP.mk документација

Exception::__construct

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

exception.construct.php PHP.net прокси Преводот е вчитан
Оригинал на PHP.net
Патека exception.construct.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + преведен приказ Кодовите, табелите и белешките остануваат читливи во истиот тек.
Exception::__construct

Референца за `exception.construct.php` со подобрена типографија и навигација.

exception.construct.php

Exception::__construct

класата mysqli_driver

Exception::__constructКонструирај ја исклучокот

= NULL

public Exception::__construct(string $message = "", int $code = 0, ?Проверува тврдење $previous = null)

Конструирај го Исклучокот.

Параметри

message

Пораката за исклучок што треба да се фрли.

code

Кодот на исклучокот.

previous

Претходниот исклучок што се користи за синџирот на исклучоци.

Забелешка: Calling the constructor of class Exception from a subclass ignores the default arguments, if the properties $code and $message are already set.

Белешки

Забелешка:

На message is NOT бинарно безбедно.

Белешки од корисници 2 забелешки

talksonweb на gmail точка com
12 години пред
For those that haven't done exception chaining. Here's an example. 

This allows you to add the previous exception to the next one and give yourself detailed information in the end as to what happened. This is useful in larger applications.

<?php
function theDatabaseObj(){
     if( database_object ){
         return database_object; 
     }
     else{
         throw new DatabaseException("Could not connect to the database");
     }
}

function updateProfile( $userInfo ){
     try{
         $db = theDatabaseObj();
         $db->updateProfile();
     }
     catch( DatabaseException $e ){
         $message = "The user :" . $userInfo->username . " could not update his profile information";
         /* notice the '$e'. I'm adding the previous exception  to this exception. I can later get a detailed view of 
          where the problem began. Lastly, the number '12' is  an exception code. I can use this for categorizing my 
         exceptions or don't use it at all. */ 
         throw new MemberSettingsException($message,12,$e);
     }
}

try{
     updateProfile( $userInfo );
}
catch( MemberSettingsException $e ){
     // this will give all information we have collected above. 
     echo $e->getTraceAsString();
}
?>
Rumour
пред 13 години
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
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.