<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[沧海一粟]]></title> 
<link>http://www.dzhope.com/index.php</link> 
<description><![CDATA[Web系统架构与服务器运维,php开发]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[沧海一粟]]></copyright>
<item>
<link>http://www.dzhope.com/post//</link>
<title><![CDATA[PHP 文件系统函数库 (2)]]></title> 
<author>jed &lt;jed521@163.com&gt;</author>
<category><![CDATA[代码编程]]></category>
<pubDate>Sat, 14 Apr 2007 00:30:45 +0000</pubDate> 
<guid>http://www.dzhope.com/post//</guid> 
<description>
<![CDATA[ 
	　fgets　取得文件指针所指的行。<br/>　　语法： string fgets(int fp, int length);<br/>　　返回值： 字符串<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数取得文件指针所指的行，返回字符串长度为行的长度减一。若发生错误则返回 false。一般常遇到的陷阱是用 C 语言的经验来使用本函数，而 EOF 时的处理方式则和 C 语言的 fgets() 不同。其中的文件指针必须是有效的，且必须是已经用 fopen()、popen() 或 fsockopen() 成功开文件的指针。<br/><br/>　　使用范例<br/><div class="code"><br/>　　&lt;?php<br/>　　　　$fd = fopen(&quot;/tmp/myfile.txt&quot;, &quot;r&quot;);<br/>　　　　while ($buffer = fgets($fd, 4096)) &#123;<br/>　　　　　　echo $buffer;<br/>　　　　&#125;<br/>　　　　fclose($fd);<br/>　　?&gt; <br/></div><br/>　　参考： fread() fopen() popen() fsockopen() fgetc()<br/><br/>　　fgetss　取得文件指针所指的行，并去掉 HTML 语言标记。<br/>　　语法： string fgetss(int fp, int length);<br/>　　返回值： 字符串<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数除了 fgets() 的功能，并同时去掉取回字符串中的 HTML 语言及 PHP 语法的标记字符串。<br/>　　参考： fopen() popen() fsockopen() fgets() strip_tags() <br/><br/>　　file　将文件全部读入数组变量中。<br/>　　语法： array file(string filename);<br/>　　返回值： 数组<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数与 readfile() 类似，不同的地方为本函数将文件全部读出，并输出到数组的变量中，每行都是单独的数组元素。<br/>　　参考： fopen() popen() readfile() <br/><br/>　　file_exists　检查文件是否存在。<br/>　　语法： int file_exists(string filename);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数用来测试检查文件是否存在，返回 true 表示文件存在。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　fileatime　取得文件最后的存取时间。<br/>　　语法： int fileatime(string filename);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回指定文件 filename 的最后存取时间。返回 false 表示发生错误。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　filectime　取得文件最后的改变时间。<br/>　　语法： int filectime(string filename);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回指定文件 filename 的 inode 最后改变时间。返回 false 表示发生错误。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　filegroup　取得文件所属的群组。<br/>　　语法： int filegroup(string filename);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回指定文件的群组使用者 GID 值。返回 false 表示发生错误。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　fileinode　取得文件的 inode 值。<br/>　　语法： int fileinode(string filename);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回指定文件的 inode 值。返回 false 表示发生错误。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　filemtime　取得文件最后的修改时间。<br/>　　语法： int filemtime(string filename);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回指定文件 filename 的最后修改时间。返回 false 表示发生错误。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　使用范例，例中返回当页 Homepage 的最后修改时间并将 filemtime() 返回的 UNIX 格式的时间字符串转换成 12 小时制的字符串。(注：由于本例的文件为 __FILE__ 表示目前的文件，其实和使用 getlastmod() 函数有相同的效果。)<br/><div class="code"><br/>　　&lt;?php<br/>　　　　$filemod = filemtime(__FILE__);<br/>　　　　$filemodtime = date(&quot;F j Y h：i：s A&quot;, $filemod);<br/>　　　　print(&quot;本页最后修改时间： $filemodtime&quot;);<br/>　　?&gt; <br/></div><br/>　　fileowner　取得文件的拥有者。<br/>　　语法： int fileowner(string filename);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回指定文件拥有者的 UID 值。返回 false 表示发生错误。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　fileperms　取得文件的权限配置。<br/>　　语法： int fileperms(string filename);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回指定文件的权限配置值。返回 false 表示发生错误。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　filesize　获得文件的大小。<br/>　　语法： int filesize(string filename);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回指定文件的文件大小。返回 false 表示发生错误。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　filetype　获得文件的类型。<br/>　　语法： string filetype(string filename);<br/>　　返回值： 字符串<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回指定文件的文件类型。可能的返回类型有 fifo、char、dir、block、link、file 及 unknown 等等。返回 false 表示发生错误。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/><br/>　　flock　锁住文件。<br/>　　语法： boolean flock(int fp, int operation);<br/>　　返回值： 布尔值<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数用来锁住文件，使别的行程无法存取。传入的参数 fp 为文件的指针。参数 operation 的值为下列的数字之一：1 表示配置锁住文件可以允许别的行程读取；2 表示只有该行程可以写入文件；3 表示读写均锁住；4 则不锁住区块 (block)。而本函数无论在 UNIX 或是 Windows 系列中的锁住效果都相近。执行成功则返回 true 值，否则返回 false 值。<br/><br/>　　fopen　打开文件或者 URL。<br/>　　语法： int fopen(string filename, string mode);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 说明： 本函数可用来打开本地或者远端的文件。若参数 filename 为 "http：//......" 则本函数利用 HTTP 1.0 协议与服务器连接，文件指针则指到服务器返回文件的起始处。若参数 filename 为 "ftp：//......." 则本函数会与服务器连接，文件指针指到指定的文件处。若 FTP 服务器没有支持被动模式 (passive mode ftp) 则返回失败值。打开的 FTP 文件可以是读取或写入其中之一，但不能读或写二种同时使用。其它的情形，本函数打开本地的文件，文件的指针则指向打开的文件。若开文件失败，则返回 false 值。<br/><br/>　　字符串参数 mode 可以是下列的情形：<br/>　　'r' 开文件方式为只读，文件指针指到开始处。<br/>　　'r+' 开文件方式为可读写，文件指针指到开始处。<br/>　　'w' 开文件方式为写入，文件指针指到开始处，并将原文件的长度设为 0。若文件不存在，则建立新文件。<br/>'　　w+' 开文件方式为可读写，文件指针指到开始处，并将原文件的长度设为 0。若文件不存在，则建立新文件。<br/>　　'a' 开文件方式为写入，文件指针指到文件最后。若文件不存在，则建立新文件。<br/>　　'a+' 开文件方式为可读写，文件指针指到文件最后。若文件不存在，则建立新文件。<br/>　　'b' 若操作系统的文字及二进位文件不同，则可以用此参数，UNIX 系统不需要使用本参数。<br/><br/>　　使用范例，第一行为 UNIX 系统使用；第二行是 Windows 系列系统的用法；第三、四行则为 URL 的使用范例。<br/><div class="code"><br/>　　&lt;? <br/>　　　　$fp = fopen(&quot;/home/rasmus/file.txt&quot;, &quot;r&quot;);<br/>　　　　$fp = fopen(&quot;c：mydatainfo.txt&quot;, &quot;r&quot;);<br/>　　　　$fp = fopen(&quot;http：//www.php.net/&quot;, &quot;r&quot;);<br/>　　　　$fp = fopen(&quot;ftp：//user：password@my.com/&quot;, &quot;w&quot;);<br/>　　?&gt; <br/></div><br/>　　参考　fclose() popen() fsockopen()<br/><br/>　　fpassthru　输出所有剩余资料。<br/>　　语法： int fpassthru(int fp);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数读取文件 fp 直到文件尾 (End of file, EOF)，并将资料输出到标准输出 (standard output)。若有错误发生，则返回 false 值。而文件 fp 必须由 fopen()、popen() 或 fsockopen() 打开成功的指针。当本函数读完文件，会自动将文件关闭，即 fp 变无效。如果只是要将文件输出到标准输出，可以使用 readfile() 会比用 fopen() 更好。<br/>　　参考： readfile() fopen() fclose() popen() fsockopen()<br/><br/>　　fputs　写到文件指针。<br/>　　语法： int fputs(int fp, string str, int [length]);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数即 fwrite()，只是一个别名。用来将字符串 str 写到文件指针。<br/><br/>　　fread　位组的方式读取文件。<br/>　　语法： string fread(int fp, int length);<br/>　　返回值： 字符串<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数读到指定长度的位组或到文件尾 EOF。<br/><br/>　　使用范例<br/><div class="code"><br/>　　&lt;?php<br/>　　　　$filename = &quot;/usr/local/myfile.txt&quot;;<br/>　　　　$fd = fopen( $filename, &quot;r&quot; );<br/>　　　　$contents = fread($fd, filesize($filename));<br/>　　　　fclose( $fd );<br/>　　?&gt; <br/></div><br/>　　参考： readfile() fopen() fclose() fwrite() fgets() fgetss() file() fpassthru() popen() fsockopen() <br/><br/>　　fseek　移动文件指针。<br/>　　语法： int fseek(int fp, int offset);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数将文件 fp 的指针移到指定的偏移位 (offset) 上。使用本函数就像 C 语言中的 fseek(fp, offset, SEEK_SET) 函数。成功则返回 0，失败则返回 -1 值。当 fp 由 fopen() 打开 "http：//...." 或是 "ftp：//...." 等 URL 文件时，本函数无法作用。<br/>　　参考： ftell() rewind()<br/><br/>　　ftell　取得文件读写指针位置。<br/>　　语法： int ftell(int fp);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回文件 fp 的指针偏移位 (offset) 值。当发生错误时，返回 false 值。文件指针 fp 必须是有效的，且使用 fopen() 或者 popen() 二个函数打开方可作用。<br/>　　参考： fopen() popen() fseek() rewind() <br/><br/>　　fwrite　二进位位方式写入文件。<br/>　　语法： int fwrite(int fp, string string, int [length]);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数将字符串 string 写入文件资料流的指针 fp 上。若有指定长度 length，则会写入指定长度字符串，或是写到字符串结束。治募注意的是若指定了长度，则在 PHP 环境配置值 magic_quotes_runtime 的配置将被忽略，同时字符串中的斜线不会被删除。<br/>　　参考： fread() fopen() popen() fsockopen() fputs()<br/><br/>　　set_file_buffer　配置文件缓冲区大小。<br/>　　语法： int set_file_buffer(int fp, int buffer);<br/>　　返回值： 整数<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数配置文件的缓冲区大小供写入文件使用。若 buffer 值设为 0，则在写入操作时无缓冲区。成功则返回 0 值。值得注意的是当文件打开 (fopen) 时，会使用本函数将默认的缓冲区设为 8k。<br/>　　参考： fopen()<br/><br/>　　is_dir　测试文件是否为目录。<br/>　　语法： boolean is_dir(string filename);<br/>　　返回值： 布尔值<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回 true 值则表示指定的 filename 为目录名称。返回值放在快取缓冲区中，可以参考 clearstatcache()。若用 is_dir(".."); 的方式，返回的也是 true。<br/>　　参考： is_file() is_link() <br/><br/>　　is_executable　测试文件是否为可执行文件。<br/>　　语法： boolean is_executable(string filename);<br/>　　返回值： 布尔值<br/>　　函数种类： 文件存取<br/>　　内容说明： 本函数返回 true 值则表示指定的 filename 存在并为可执行文件。返回值放在快取缓冲区中，可以参考 clearstatcache()。<br/>　　参考： is_file() is_link()<br/><br/><br/>Tags - <a href="http://www.dzhope.com/tags/%25E6%2596%2587%25E4%25BB%25B6%25E5%2587%25BD%25E6%2595%25B0/" rel="tag">文件函数</a>
]]>
</description>
</item><item>
<link>http://www.dzhope.com/post//#blogcomment</link>
<title><![CDATA[[评论] PHP 文件系统函数库 (2)]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.dzhope.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>