<td>Return first match of <code>note</code>, <code>reqenv</code>,
<code>osenv</code></td><td/></tr>
<code>osenv</code></td><td>ordering</td></tr>
<trclass="odd"><td><code>tolower</code></td>
<td>Convert string to lower case</td><td/></tr>
<tr><td><code>toupper</code></td>
@@ -460,14 +461,37 @@ listfunction ::= listfuncname "<strong>(</strong>" word "<strong>)</strong>"</pr
encoding</td><td/></tr>
<trclass="odd"><td><code>file</code></td>
<td>Read contents from a file (including line endings, when present)
</td><td>yes</td></tr>
<tr><td><code>filesize</code></td>
</td><td>restricted</td></tr>
<tr><td><code>filemod</code></td>
<td>Return last modification time of a file (or 0 if file does not exist
or is not regular file)</td><td>restricted</td></tr>
<trclass="odd"><td><code>filesize</code></td>
<td>Return size of a file (or 0 if file does not exist or is not
regular file)</td><td>yes</td></tr>
regular file)</td><td>restricted</td></tr>
</table>
<p>The functions marked as "restricted" are not available in some modules
like <codeclass="module"><ahref="./mod/mod_include.html">mod_include</a></code>.</p>
<p>The functions marked as "restricted" in the final column are not
available in some modules like <codeclass="module"><ahref="./mod/mod_include.html">mod_include</a></code>.</p>
<p>The functions marked as "ordering" in the final column require some
consideration for the ordering of different components of the server,
especially when the function is used within the
<<codeclass="directive"><ahref="./mod/core.html#if">If</a></code>> directive which is
evaluated relatively early.</p>
<divclass="note">
<h3>Environment variable ordering</h3>
When environment variables are looked up within an
<<codeclass="directive"><ahref="./mod/core.html#if">If</a></code>> condition, it's important
to consider how extremely early in request processing that this
resolution occurs. As a guideline, any directive defined outside of virtual host
context (directory, location, htaccess) is not likely to have yet had a
chance to execute. <codeclass="directive"><ahref="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code>
in virtual host scope is one directive that runs prior to this resolution
<br/>
<br/>
When <code>reqenv</code> is used outside of <<codeclass="directive"><ahref="./mod/core.html#if">If</a></code>>, the resolution will generally occur later, but the
exact timing depends on the directive the expression has been used within.
</div>
<p>When the functions <code>req</code> or <code>http</code> are used,
the header name will automatically be added to the Vary header of the
</div><divclass="top"><ahref="#page-header"><imgsrc="./images/up.gif"alt="top"/></a></div><divclass="section"><h2><aid="comments_section"name="comments_section">Comments</a></h2><divclass="warning"><strong>Notice:</strong><br/>This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <ahref="http://httpd.apache.org/lists.html">mailing lists</a>.</div>