PHP でページを更新する
-
PHP で
header()
関数を使用してページを定期的に更新する -
HTML の
meta
タグを使って、PHP でページを定期的に更新する -
JavaScript 関数
location.reload()
を使ってページを定期的に更新する
PHP の Refresh
ヘッダーを使用してページを更新する方法を紹介します。このメソッドを使用して、ページを更新する時間間隔を定義できます。
PHP の HTML meta
タグを使用してページを更新する別の方法を示します。この方法は、ページを更新するための遅延時間を定義するという点で、最初の方法と似ています。
ここでは、JavaScript の location.reload()
関数を使ってページを更新する方法の例を示します。この関数を PHP スクリプトで使用します。
PHP で header()
関数を使用してページを定期的に更新する
header()
関数を使用して、PHP でページを更新できます。header()
関数内に Refresh
ヘッダーを記述し、ページを更新する時間間隔を指定します。たとえば、header()
関数を記述し、1 秒の時間間隔を header("Refresh:1")
として指定します。2 行目で、date()
関数を使用して現在の日付と時刻を表示します。文字 H
、i
、s
、Y
、m
、および d
を使用して、それぞれ時、分、秒、年、月、および日を表します。date()
関数内でこの形式を使用します。header()
関数については、PHP マニュアルを確認してください。
以下の例では、現在の時刻を 1 秒で更新します。その結果、現在の時刻がスクリプトによって Web ページに表示されます。コードの出力セクションには、インスタンスのみが表示されます。
サンプルコード:
# php 7.*
<?php
header("Refresh:1");
echo date('H:i:s Y-m-d');
?>
出力:
14:45:19 2021-04-14
HTML の meta
タグを使って、PHP でページを定期的に更新する
HTML の meta
タグを使用して、PHP でページを定期的に更新できます。meta
タグの http-equiv
属性を refresh
に設定し、content
属性で遅延時間を指定します。http_equiv
属性は、content
属性の値の HTTP ヘッダーを設定します。たとえば、meta
タグを記述し、属性 http-equiv
を refresh
に指定し、属性 content
を 1
に指定して、タグを閉じます。上記のメソッドのように date()
関数を使用して現在の日付と時刻を表示します。メタリフレッシュについては、こちらを確認してください。
以下の例は、Web ページにリアルタイムの日付と時刻を表示します。ページは 1 秒で更新され、この機能が有効になります。コードの出力セクションには、時間のインスタンスのみが表示されます。
サンプルコード:
#php 7.x
<?php
echo("<meta http-equiv='refresh' content='1'>");
echo date('H:i:s Y-m-d');
?>
出力:
15:13:13 2021-04-14
JavaScript 関数 location.reload()
を使ってページを定期的に更新する
JavaScript 関数 location.reload()
を使用して、Web ページを更新できます。この関数は、PHP ファイルと同様に使用できます。PHP ファイルのコンテキストでは、script
タグ内の location.reload()
関数をエコーします。この関数は、パラメーターとしてブール値を取ります。true
値はサーバーから Web ページを再読み込みしますが、false
値はブラウザのデータがキャッシュされた状態でページを再読み込みします。デフォルト値は false
です。location.reload()
関数の詳細については、MSDN WebDocsを参照してください。
たとえば、PHP ファイルでは、date()
関数をエコーして現在の日付と時刻を表示します。次に、script
タグ内に関数 location.reload()
を記述します。type
属性を tex/javascript
として指定します。次に、echo
ステートメントを使用して script
タグを出力します。
コード例:
#php 7.x
<?php
echo date('H:i:s Y-m-d');
echo '<script type="text/JavaScript"> location.reload(); </script>';
?>
出力:
15:53:25 2021-04-14
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn