📄 function.fileperms.html
字号:
<div class="example"> <p><b>Example #1 Display permissions as an octal value</b></p> <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB"><?php<br /></span><span style="color: #007700">echo </span><span style="color: #0000BB">substr</span><span style="color: #007700">(</span><span style="color: #0000BB">sprintf</span><span style="color: #007700">(</span><span style="color: #DD0000">'%o'</span><span style="color: #007700">, </span><span style="color: #0000BB">fileperms</span><span style="color: #007700">(</span><span style="color: #DD0000">'/tmp'</span><span style="color: #007700">)), -</span><span style="color: #0000BB">4</span><span style="color: #007700">);<br />echo </span><span style="color: #0000BB">substr</span><span style="color: #007700">(</span><span style="color: #0000BB">sprintf</span><span style="color: #007700">(</span><span style="color: #DD0000">'%o'</span><span style="color: #007700">, </span><span style="color: #0000BB">fileperms</span><span style="color: #007700">(</span><span style="color: #DD0000">'/etc/passwd'</span><span style="color: #007700">)), -</span><span style="color: #0000BB">4</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span></span></code></div> </div> <div class="example-contents"><p>The above example will output:</p></div> <div class="example-contents"><pre><div class="cdata"><pre>17770644</pre></div> </pre></div> </div> <div class="example"> <p><b>Example #2 Display full permissions</b></p> <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB"><?php<br />$perms </span><span style="color: #007700">= </span><span style="color: #0000BB">fileperms</span><span style="color: #007700">(</span><span style="color: #DD0000">'/etc/passwd'</span><span style="color: #007700">);<br /><br />if ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0xC000</span><span style="color: #007700">) == </span><span style="color: #0000BB">0xC000</span><span style="color: #007700">) {<br /> </span><span style="color: #FF8000">// Socket<br /> </span><span style="color: #0000BB">$info </span><span style="color: #007700">= </span><span style="color: #DD0000">'s'</span><span style="color: #007700">;<br />} elseif ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0xA000</span><span style="color: #007700">) == </span><span style="color: #0000BB">0xA000</span><span style="color: #007700">) {<br /> </span><span style="color: #FF8000">// Symbolic Link<br /> </span><span style="color: #0000BB">$info </span><span style="color: #007700">= </span><span style="color: #DD0000">'l'</span><span style="color: #007700">;<br />} elseif ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x8000</span><span style="color: #007700">) == </span><span style="color: #0000BB">0x8000</span><span style="color: #007700">) {<br /> </span><span style="color: #FF8000">// Regular<br /> </span><span style="color: #0000BB">$info </span><span style="color: #007700">= </span><span style="color: #DD0000">'-'</span><span style="color: #007700">;<br />} elseif ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x6000</span><span style="color: #007700">) == </span><span style="color: #0000BB">0x6000</span><span style="color: #007700">) {<br /> </span><span style="color: #FF8000">// Block special<br /> </span><span style="color: #0000BB">$info </span><span style="color: #007700">= </span><span style="color: #DD0000">'b'</span><span style="color: #007700">;<br />} elseif ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x4000</span><span style="color: #007700">) == </span><span style="color: #0000BB">0x4000</span><span style="color: #007700">) {<br /> </span><span style="color: #FF8000">// Directory<br /> </span><span style="color: #0000BB">$info </span><span style="color: #007700">= </span><span style="color: #DD0000">'d'</span><span style="color: #007700">;<br />} elseif ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x2000</span><span style="color: #007700">) == </span><span style="color: #0000BB">0x2000</span><span style="color: #007700">) {<br /> </span><span style="color: #FF8000">// Character special<br /> </span><span style="color: #0000BB">$info </span><span style="color: #007700">= </span><span style="color: #DD0000">'c'</span><span style="color: #007700">;<br />} elseif ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x1000</span><span style="color: #007700">) == </span><span style="color: #0000BB">0x1000</span><span style="color: #007700">) {<br /> </span><span style="color: #FF8000">// FIFO pipe<br /> </span><span style="color: #0000BB">$info </span><span style="color: #007700">= </span><span style="color: #DD0000">'p'</span><span style="color: #007700">;<br />} else {<br /> </span><span style="color: #FF8000">// Unknown<br /> </span><span style="color: #0000BB">$info </span><span style="color: #007700">= </span><span style="color: #DD0000">'u'</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #FF8000">// Owner<br /></span><span style="color: #0000BB">$info </span><span style="color: #007700">.= ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0100</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'r' </span><span style="color: #007700">: </span><span style="color: #DD0000">'-'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$info </span><span style="color: #007700">.= ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0080</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'w' </span><span style="color: #007700">: </span><span style="color: #DD0000">'-'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$info </span><span style="color: #007700">.= ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0040</span><span style="color: #007700">) ?<br /> ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0800</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'s' </span><span style="color: #007700">: </span><span style="color: #DD0000">'x' </span><span style="color: #007700">) :<br /> ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0800</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'S' </span><span style="color: #007700">: </span><span style="color: #DD0000">'-'</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">// Group<br /></span><span style="color: #0000BB">$info </span><span style="color: #007700">.= ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0020</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'r' </span><span style="color: #007700">: </span><span style="color: #DD0000">'-'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$info </span><span style="color: #007700">.= ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0010</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'w' </span><span style="color: #007700">: </span><span style="color: #DD0000">'-'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$info </span><span style="color: #007700">.= ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0008</span><span style="color: #007700">) ?<br /> ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0400</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'s' </span><span style="color: #007700">: </span><span style="color: #DD0000">'x' </span><span style="color: #007700">) :<br /> ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0400</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'S' </span><span style="color: #007700">: </span><span style="color: #DD0000">'-'</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">// World<br /></span><span style="color: #0000BB">$info </span><span style="color: #007700">.= ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0004</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'r' </span><span style="color: #007700">: </span><span style="color: #DD0000">'-'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$info </span><span style="color: #007700">.= ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0002</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'w' </span><span style="color: #007700">: </span><span style="color: #DD0000">'-'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$info </span><span style="color: #007700">.= ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0001</span><span style="color: #007700">) ?<br /> ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0200</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'t' </span><span style="color: #007700">: </span><span style="color: #DD0000">'x' </span><span style="color: #007700">) :<br /> ((</span><span style="color: #0000BB">$perms </span><span style="color: #007700">& </span><span style="color: #0000BB">0x0200</span><span style="color: #007700">) ? </span><span style="color: #DD0000">'T' </span><span style="color: #007700">: </span><span style="color: #DD0000">'-'</span><span style="color: #007700">));<br /><br />echo </span><span style="color: #0000BB">$info</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?></span></span></code></div> </div> <div class="example-contents"><p>The above example will output:</p></div> <div class="example-contents"><pre><div class="cdata"><pre>-rw-r--r--</pre></div> </pre></div> </div> </p> </div> <div class="refsect1 notes"> <h3 class="title">Notes</h3> <blockquote><p><b class="note">Note</b>: <span class="simpara">The results of this function are cached. See <a href="function.clearstatcache.html" class="function">clearstatcache()</a> for more details.</span></p></blockquote> <div class="tip"><b class="tip">Tip</b><p class="simpara">As of PHP 5.0.0, this functioncan also be used with <em class="emphasis">some</em> URL wrappers. Refer to <a href="wrappers.html" class="xref">List of Supported Protocols/Wrappers</a> for a listing of which wrappers support <a href="function.stat.html" class="function">stat()</a> family of functionality.</p></div> </div> <div class="refsect1 seealso"> <h3 class="title">See Also</h3> <p class="para"> <ul class="simplelist"> <li class="member"><a href="function.is-readable.html" class="function" rel="rdfs-seeAlso">is_readable()</a></li> <li class="member"><a href="function.stat.html" class="function" rel="rdfs-seeAlso">stat()</a></li> </ul> </p> </div></div><hr /><div style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="function.fileowner.html">fileowner</a></div> <div class="next" style="text-align: right; float: right;"><a href="function.filesize.html">filesize</a></div> <div class="up"><a href="ref.filesystem.html">Filesystem Functions</a></div> <div class="home"><a href="index.html">PHP Manual</a></div></div></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -