ホームページ > データベース > mysql チュートリアル > 私の PHP コードで間違った ISO 8601 日付が表示されるのはなぜですか?

私の PHP コードで間違った ISO 8601 日付が表示されるのはなぜですか?

Linda Hamilton
リリース: 2024-11-10 17:58:02
オリジナル
848 人が閲覧しました

Why is my PHP code displaying an incorrect ISO 8601 date?

PHP を使用した ISO 8601 日付の表示が正しくない

ISO 8601 形式の文字列として日時を表示しようとすると、誤った出力が表示される可能性があります。具体的には、「17 Oct 2008」などのタイムスタンプが「1969-12-31T18:33:28-06:00」と誤って表示されます。

引数の誤認

主な問題は構造にあります提供されたコードの:

<?php echo date("c", $post[3]); ?>
ログイン後にコピー

ここで、の 2 番目の引数date() 関数は $post[3] で、データベースのタイムスタンプ文字列を表します。ただし、date() 関数は 2 番目の引数として UNIX タイムスタンプを想定しています。

解決策: データベース タイムスタンプの変換

これを修正するには、 strtotime() 関数。修正されたコードは次のようになります。

<?php echo date("c", strtotime($post[3])); ?>
ログイン後にコピー

この変更を組み込むことにより、正しい ISO 8601 形式の文字列が生成され、正しく表示されない問題が解決されます。

以上が私の PHP コードで間違った ISO 8601 日付が表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート