PHPのdate_get_last_errors()関数を使用し日付文字列の解析中に検出された警告/エラーを返す

PHPのdate_get_last_errors()関数を使用し日付文字列の解析中に検出された警告/エラーを返してみます。

date_get_last_errors()関数は、日付文字列の解析中に検出された警告、エラーを返すことができます。

■基本的な構文

date_get_last_errors()

■環境

・Windows10

・XAMPP 8.0.6

・PHP Version 8.0.6

■date_get_last_errors()関数を使用し日付文字列の解析中に検出された警告、エラーを返す

では、PHPのdate_get_last_errors()関数を使用し日付文字列の解析中に検出された警告、エラーを返すスクリプトを書いていきます。

■コード

<html lang="ja">
<head>
<title>date_get_last_errors()関数を使用し日付文字列の解析中に検出された警告、エラーを返す</title>
</head>
<body>
<?php
date_create("dmsakn4-~=3*;s");
print_r(date_get_last_errors());
?>
</body>
</html>

日付文字列の解析中に検出された警告、エラーを返してみますので、今回はdate_create()関数を使用し、新しいDateTimeオブジェクトを作成してみます。関数の括弧内には、引数,パラメータとして、本来であれば、日付/時刻の文字列を渡すところですが、適当な文字列を渡します。これでDateTimeオブジェクトの作成は完了です。

最後に、date_get_last_errors()関数を使用します。関数の括弧内には引数,パラメータを渡しません。これで日付文字列の解析中に検出された警告、エラーが返されます。返された警告、エラーをprint_r()関数を使用し、その詳細を出力してみます。

■実行

では、このスクリプトを「date_warnings_and_errors.php」という名前で保存し、実行させてみます。

Array ( [warning_count] => 1 [warnings] => Array ( [13] => Double timezone specification ) [error_count] => 8 [errors] => Array ( [0] => The timezone could not be found in the database [6] => Unexpected character [7] => Unexpected character [8] => Unexpected character [9] => Unexpected character [10] => Unexpected character [11] => Unexpected character [12] => Unexpected character ) )

実行させてみると、date_get_last_errors()関数を使用したことで、date_create()関数を使用し、DateTimeオブジェクト内の文字列を解析し、エラー/警告に関する情報を含む配列が返され、返された配列をprint_r()関数を使用し、出力させることができました。

コメント

タイトルとURLをコピーしました