Best way to implement file name version in apache

htaccess:

<span class="typ">RewriteEngine</span><span class="pln"> on </span><span class="typ">RewriteCond</span> <span class="pun">%{</span><span class="pln">REQUEST_FILENAME</span><span class="pun">}</span> <span class="pun">!-</span><span class="pln">s </span><span class="com"># Make the file doesn't actually exist</span> <span class="typ">RewriteRule</span> <span class="pun">^(.*)</span><span class="pln">\.</span><span class="pun">[</span><span class="pln">\d</span><span class="pun">]+</span><span class="pln">\.</span><span class="pun">(</span><span class="pln">css</span><span class="pun">|</span><span class="pln">js</span><span class="pun">)</span><span class="pln">$ $1</span><span class="pun">.</span><span class="pln">$2 </span><span class="pun">[</span><span class="pln">L</span><span class="pun">]</span> <span class="com"># Strip out the version number</span>

php:

<span class="kwd">function</span><span class="pln"> versioning</span><span class="pun">(</span><span class="pln">$file</span><span class="pun">)</span> <span class="pun">{</span> <span class="kwd">if</span><span class="pun">(</span><span class="pln">strpos</span><span class="pun">(</span><span class="pln">$file</span><span class="pun">,</span> <span class="str">'/'</span><span class="pun">)</span> <span class="pun">!==</span> <span class="lit">0</span> <span class="pun">||</span> <span class="pun">!</span><span class="pln">file_exists</span><span class="pun">(</span><span class="pln">$_SERVER</span><span class="pun">[</span><span class="str">'DOCUMENT_ROOT'</span><span class="pun">]</span> <span class="pun">.</span><span class="pln"> $file</span><span class="pun">))</span> <span class="kwd">return</span><span class="pln"> $file</span><span class="pun">;</span><span class="pln"> $mtime </span><span class="pun">=</span><span class="pln"> filemtime</span><span class="pun">(</span><span class="pln">$_SERVER</span><span class="pun">[</span><span class="str">'DOCUMENT_ROOT'</span><span class="pun">]</span> <span class="pun">.</span><span class="pln"> $file</span><span class="pun">);</span> <span class="kwd">return</span><span class="pln"> preg_replace</span><span class="pun">(</span><span class="str">'{\\.([^./]+)$}'</span><span class="pun">,</span> <span class="str">".$mtime.\$1"</span><span class="pun">,</span><span class="pln"> $file</span><span class="pun">);</span> <span class="pun">}</span>

usage:

<span class="pln"><link rel="stylesheet" href="</span><span class="pun"><?=</span><span class="pln">versioning</span><span class="pun">(</span><span class="str">'/stylesheet/base.css'</span><span class="pun">)?></span><span class="pln">" type="text/css" /></span>

results:

<span class="tag"><link</span> <span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span> <span class="atn">href</span><span class="pun">=</span><span class="atv">"/stylesheet/base.94857365432.css"</span> <span class="atn">type</span><span class="pun">=</span><span class="atv">"text/css"</span> <span class="tag">/></span>