PHP でのタイムスタンプ変換が不正確な場合はどうすればよいですか?
PHP は、タイムスタンプ処理をサポートする一般的に使用されるプログラミング言語です。タイムスタンプは、1970 年 1 月 1 日からのコンピューター内の秒数を指し、イベントがいつ発生したかを記録するためによく使用されます。ただし、PHP では、タイムスタンプを時刻に変換した結果が不正確になる場合があります。この記事では、タイムスタンプが不正確になる理由と解決策について説明します。
問題の説明
多くの PHP プログラマは、タイムスタンプを時刻に変換するときに、結果が常に不正確になるという問題に遭遇したことがあるかもしれません。たとえば、次のコードを使用してタイムスタンプを日付に変換できます:
$timestamp = 1597833600; $date = date('Y-m-d H:i:s', $timestamp); echo $date;
結果出力は 2020-08-19 07:00:00
ですが、実際にはこの時刻は不正確です。このコードをローカル コンピューター (特に中国のタイムゾーン) で実行すると、時刻が実際より 8 時間早いことがわかります。その理由は、PHP の date() 関数がデフォルトで現在のタイムゾーンではなくグリニッジ標準時 (GMT) を使用するためです。
解決策
タイムゾーンの設定
この問題を解決するには、単純にタイムゾーンを設定する必要があります。タイムゾーンは、PHP の date_default_timezone_set()
関数を呼び出すことで設定できます。たとえば、中国のタイムゾーンで PHP を実行している場合、次のコードを使用できます:
date_default_timezone_set('Asia/Shanghai');
ここでは、タイムゾーンを設定する アジア/上海の場合、これは中国のタイムゾーンです。設定すると、上記のコードを使用してタイムスタンプを日付に変換すると、出力は 2020-08-19 15:00:00
になります。
DateTime クラスの使用
タイムゾーンをローカルタイムゾーンに設定することに加えて、PHP の DateTime クラスを使用してこの問題を解決することもできます。 DateTime クラスは、PHP 5.2.0 で導入された強力なクラスで、タイムゾーンの問題を含む日付と時刻を処理できます。
DateTime クラスを使用する場合、次のサンプル コードを使用してタイムスタンプを日付に変換できます:
$timestamp = 1597833600; $date = new DateTime(); $date->setTimezone(new DateTimeZone('Asia/Shanghai')); $date->setTimestamp($timestamp); echo $date->format('Y-m-d H:i:s');
この例では、最初に DateTime オブジェクトを作成し、次にタイム ゾーンを設定します。ローカルタイムゾーンに合わせます。次に、タイムスタンプを設定し、日付出力としてフォーマットします。結果は、正しいローカル日時になります (例: 2020-08-19 15:00:00
)。
Carbon クラスの使用
もう 1 つのオプションの解決策は、PHP DateTime クラスを拡張するサードパーティ ライブラリである Carbon クラスを使用することです。 Carbon を使用すると、日付と時刻を簡単に管理し、タイムゾーンの問題に対処できます。
以下は、Carbon クラスを使用してタイムスタンプを日付に変換するサンプル コードです:
$timestamp = 1597833600; $date = \Carbon\Carbon::createFromTimestamp($timestamp, 'Asia/Shanghai'); echo $date->format('Y-m-d H:i:s');
この例では、Carbon::createFromTimestamp()## を使用して作成しました。 # メソッド タイムゾーンがローカルタイムゾーンに設定された Carbon オブジェクト。次に、これを日付出力としてフォーマットし、出力は
2020-08-19 15:00:00 となります。
以上がPHP でのタイムスタンプ変換が不正確な場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHP 8のJITコンピレーションは、頻繁に実行されるコードをマシンコードにコンパイルし、重い計算でアプリケーションに利益をもたらし、実行時間を短縮することにより、パフォーマンスを向上させます。

この記事では、PHPおよび緩和戦略におけるOWASPトップ10の脆弱性について説明します。重要な問題には、PHPアプリケーションを監視および保護するための推奨ツールを備えたインジェクション、認証の壊れ、XSSが含まれます。

この記事では、不正アクセスを防ぎ、ベストプラクティスの詳細、セキュリティ強化ツールの推奨を防ぐために、PHPで堅牢な認証と承認の実装について説明します。

この記事では、PHPの対称的および非対称暗号化について説明し、適合性、パフォーマンス、セキュリティの違いを比較しています。対称暗号化はより速く、バルクデータに適していますが、非対称は安全なキー交換に使用されます。

この記事では、コードインジェクションのような脆弱性を防ぐために、PHPファイルのアップロードを確保することについて説明します。ファイルタイプの検証、セキュアストレージ、およびアプリケーションセキュリティを強化するエラー処理に焦点を当てています。

記事では、PHPを使用してデータベースからデータを取得し、手順、セキュリティ対策、最適化手法、およびソリューションを使用した一般的なエラーをカバーしています。

この記事では、mysqlデータベースインタラクションのphpでmysqli_query()およびmysqli_fetch_assoc()関数について説明します。それは彼らの役割、違いを説明し、それらの使用の実用的な例を提供します。主な議論は、USINの利点に焦点を当てています

この記事では、CSRFトークン、同じサイトCookie、適切なセッション管理など、PHPでのCSRF攻撃を防ぐための戦略について説明します。
