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>
: