
PHP でクライアントのタイムゾーンを取得する
Web サイト訪問者が使用するタイムゾーンを確認するにはどうすればよいですか?
これに対処するにはこの問題では、PHP ベースのソリューションでは jQuery と PHP を活用します。次の手順を実装します:
- PHP コードの統合:
1 2 | <code class = "php" >session_start();
$timezone = $_SESSION [ 'time' ];</code>
|
ログイン後にコピー
-
ヘッダー内の jQuery スクリプト:
1 | <code class = "html" ><script type= "text/javascript" src= "http://code.jquery.com/jquery-latest.min.js" ></script></code>
|
ログイン後にコピー
- クライアントのタイムゾーン JavaScript:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <code class = "javascript" >$(document).ready( function () {
if ( "<?php echo $timezone; ?>" .length == 0) {
var visitortime = new Date ();
var visitortimezone = "GMT " + -visitortime.getTimezoneOffset() / 60;
$.ajax({
type: "GET" ,
url: "http://domain.com/timezone.php" ,
data: 'time=' + visitortimezone,
success: function () {
location.reload();
}
});
}
});</code>
|
ログイン後にコピー
- Timezone.php コンテンツ:
次のコードを使用して timezone.php という名前のファイルを作成します:
1 2 3 | <code class = "php" ><?php
session_start();
$_SESSION [ 'time' ] = $_GET [ 'time' ];</code>
|
ログイン後にコピー
- メカニズムの説明:
このソリューションは jQuery を利用してクライアントの現地時間を決定し、それを PHP セッション変数として保存します。 timezone.php は、クライアントのタイムゾーン オフセットを PHP セッションに保存するために AJAX 経由で呼び出される小さな PHP スクリプトです。
- クライアント タイムゾーンの取得:
ページがリロードされたら、PHP の $timezone 変数にアクセスして、訪問者のタイムゾーン オフセットを取得できます。
以上がPHP でクライアントのタイムゾーンを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。