Função PHP date_get_last_errors ()

Definição e Uso

O date_get_last_errors () é um apelido de DateTime :: getLastErrors () :: __ construct () . Esta função é usada para obter os avisos e erros ocorridos durante a análise de uma string de data.

Sintaxe

date_get_last_errors();

Parâmetros

Esta função não aceita nenhum parâmetro

Valores Retornados

A função PHP date_get_last_errors () retorna um array que contém todos os avisos e erros que ocorrem quando você tenta analisar uma string de data.

Versão PHP

Esta função foi introduzida pela primeira vez no PHP versão 5.5.0 e funciona com todas as versões posteriores.

Exemplo

O exemplo a seguir demonstra o uso da função date_get_last_errors () -

<?php
   date_create("215-7896-848");
   $errors = date_get_last_errors();
   print_r($errors);
?>

Isso produzirá o seguinte resultado -

Array
(
    [warning_count] => 1
    [warnings] => Array
        (
            [8] => Double timezone specification
        )

    [error_count] => 5
    [errors] => Array
        (
            [0] => Unexpected character
            [1] => Unexpected character
            [2] => Unexpected character
            [6] => Unexpected character
            [7] => Unexpected character
        )

)

Exemplo

Usando esta função, você pode detectar os erros ocorridos ao criar uma data, conforme mostrado abaixo -

<?php
   try { 
      $res = new DateTime("215-7896-848");
      print($res);
   }  catch (Exception $e) { 
      print_r(DateTime::getLastErrors()); 
   }  
?>

Isso produzirá o seguinte resultado -

Array
(
    [warning_count] => 1
    [warnings] => Array
        (
            [8] => Double timezone specification
        )

    [error_count] => 5
    [errors] => Array
        (
            [0] => Unexpected character
            [1] => Unexpected character
            [2] => Unexpected character
            [6] => Unexpected character
            [7] => Unexpected character
        )

)

Exemplo

O exemplo a seguir exibe os erros / avisos ocorridos durante a criação de um objeto DateTime usando a função date_create_from_format () -

//Creating a DateTime object
$date = "25-Mar-1989";
$format = "d-Z-Y";
$res = date_create_from_format($format, $date);
print_r(date_get_last_errors());

Isso produzirá o seguinte resultado -

Array
(
    [warning_count] => 0
    [warnings] => Array
        (
        )

    [error_count] => 3
    [errors] => Array
        (
            [3] => The format separator does not match
            [4] => Unexpected data found.
        )

)