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