php を使って ./js/ 配下の JavaScript にバージョン番号を自動で付加する tips

LINEで送る
Pocket

php ないで javaScript を読み込みたい場合

?>
<script src=”./js/common.js”></script>
<?php

って記述して一度php を閉じてhtmlを記述しますが、js に?v= というバージョン番号を自動で付加したいと思っておりました。Chrome のキャッシュが頑張ってくれているので自動でロードされない。例えば共通の js をいくつも php 内でコールしている場合、全部のコードに v= って記述するのはアホらしい。毎回バージョン番号を変更するのも面倒くさい。そして思いついた、

js のタイプスタンプ(日付 YYYYMMDDHHMM)をバージョン番号にして自動で付加すればいいじゃん

jsScript.php

<?php

$DOCROOT = "/var/www/html/";

	foreach(glob($DOCROOT . "/js/*.js") as $file) {
		$updateDate = filemtime($file);
		print "<script src=\"" . str_replace($DOCROOT, '', $file) . '?v=' . date('YmdHi', $updateDate) . "\"></script>\n";
	}

?>

index.php

<?php
include_once("phpcommon/jsScript.php");
?>

こうすれば ./js/ 配下のファイルを自動でインクルードしてバージョン番号を付加してくれます。

# php jsScript.php 
<script src="/js/common.js?v=202006020916"></script>
   :
LINEで送る
Pocket

  • このエントリーをはてなブックマークに追加

コメントを残す

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください