Latest web development tutorials
×

PHP curso

PHP curso PHP breve introdução PHP instalar PHP gramática PHP variável PHP echo/print PHP Tipos de dados PHP constante PHP corda PHP operadores PHP If...Else PHP Switch PHP ordem PHP Classificação de uma matriz PHP superglobais PHP While circulação PHP For circulação PHP função PHP Variáveis ​​mágicas PHP namespaces PHP Object-Oriented

PHP formulário

PHP formulário PHP Autenticação de formulários PHP formulário - campos obrigatórios PHP formulário - -mail de verificação e URL PHP instância de formulário completo PHP $_GET variável PHP $_POST variável

PHP Tutorial avançado

PHP arrays multidimensionais PHP data PHP conter PHP arquivo PHP Carregar arquivo PHP Cookie PHP Session PHP E-mail PHP segurança E-mail PHP Error PHP Exception PHP filtro PHP Filtro avançado PHP JSON

PHP 7 novos Recursos

PHP 7 novos Recursos

PHP banco de dados

PHP MySQL breve introdução PHP MySQL conexão PHP MySQL Criação de um banco de dados PHP MySQL Criar uma tabela de dados PHP MySQL inserir dados PHP MySQL Inserir dados múltiplos PHP MySQL instruções preparadas PHP MySQL ler dados PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX breve introdução AJAX PHP AJAX banco de dados AJAX XML AJAX busca em tempo real AJAX RSS Reader AJAX voto

PHP manual de referência

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP Processamento de imagem PHP RESTful

de erro PHP DOP com tratamento de erros

Manual do PHP DOP Referência Manual do PHP DOP Referência

  • PDO :: ERRMODE_SILENT

    Este é o modo padrão. PDO irá simplesmente definir o código de erro, use o PDO :: errorCode () eo método PDO :: errorInfo () para verificar a declaração e banco de dados objetos. Se o erro é devido a é gerado o objeto da instrução de chamada, então você pode chamar esse objeto PDOStatement :: método PDOStatement :: errorInfo () errorCode () ou. Se o erro resultou de uma chamada no objeto de banco de dados, em seguida, chamar esses métodos no objeto de banco de dados.

  • PDO :: ERRMODE_WARNING

    Além de definir a adição de código de erro, PDO irá emitir uma mensagem E_WARNING tradicional. Se você quiser apenas para ver o que problemas ocorreram sem interromper o fluxo da aplicação, então essa configuração no período de depuração / teste é muito útil.

  • PDO :: ERRMODE_EXCEPTION

    Além de definir a adição de código de erro, PDO irá lançar uma classe PDOException exceção e definir suas propriedades para refletir as mensagens de código de erro e erro. Essa configuração também é útil durante a depuração, porque um ponto errado ele vai efetivamente ampliar o roteiro, que pode rapidamente apontar potencial código de área problemática (lembre-se: se a exceção faz com que o script para concluir a transação é automaticamente volta rolo).

    Outro modo de exceção é muito útil, em comparação com os avisos de estilo tradicional PHP, você pode construir seu próprio gerenciamento de erros de forma mais clara, eo valor de retorno de cada chamada de banco de dados, código padrão anormal necessária em comparação com o modo silencioso e explicitamente verificando / nidificação menos.

Criar uma instância DOP e definir o modo de erro

<?php
$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';

try {
    $dbh = new PDO($dsn, $user, $password);
    $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

?>

Nota: Independentemente de saber se o conjunto atual PDO :: ATTR_ERRMODE, se a conexão falhar, PDO :: __ construct () sempre lançar uma exceção PDOException. exceção não capturada é fatal.

Criar uma instância DOP e definir o modo de erro no construtor

<?php
$dsn = 'mysql:dbname=test;host=127.0.0.1';
$user = 'googleguy';
$password = 'googleguy';

/*
    使用 try/catch 围绕构造函数仍然有效,即使设置了 ERRMODE 为 WARNING,
    因为如果连接失败,PDO::__construct 将总是抛出一个  PDOException 异常。
*/
try {
    $dbh = new PDO($dsn, $user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
    exit;
}

// 这里将导致 PDO 抛出一个 E_WARNING 级别的错误,而不是 一个异常 (当数据表不存在时)
$dbh->query("SELECT wrongcolumn FROM wrongtable");
?>

A saída exemplo vontade acima:

Warning: PDO::query(): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'test.wrongtable' doesn't exist in
/tmp/pdo_test.php on line 18
add a note add a note

Manual do PHP DOP Referência Manual do PHP DOP Referência