61 檔案系統

WBOY
發布: 2016-07-29 09:11:45
原創
885 人瀏覽過

讀取檔案內容:

<code>PHP具有丰富的文件操作函数,最简单的<strong>读取文件</strong>的函数为file_get_contents,可以将整个文件全部读
取到一个字符串中。

<span>$content</span> = file_get_contents(<span>'./test.txt'</span>);
file_get_contents也可以通过参数控制读取内容的开始点以及长度。

<span>$content</span> = file_get_contents(<span>'./test.txt'</span>, null, null, <span>100</span>, <span>500</span>);
PHP也提供类似于C语言操作文件的方法,使用<span>fopen</span>,fgets,<span>fread</span>等方法,fgets可以从文件指针中读
取一行,freads可以读取指定长度的字符串。

<span>$fp</span> = <span>fopen</span>(<span>'./text.txt'</span>, <span>'rb'</span>);
<span>while</span>(!<span>feof</span>(<span>$fp</span>)) {
    echo fgets(<span>$fp</span>); <span>//读取一行</span>
}
<span>fclose</span>(<span>$fp</span>);


<span>$fp</span> = <span>fopen</span>(<span>'./text.txt'</span>, <span>'rb'</span>);
<span>$contents</span> = <span>''</span>;
<span>while</span>(!<span>feof</span>(<span>$fp</span>)) {
    <span>$contents</span> .= <span>fread</span>(<span>$fp</span>, <span>4096</span>); <span>//一次读取4096个字符</span>
}
<span>fclose</span>(<span>$fp</span>);
使用<span>fopen</span>打开的文件,最好使用<span>fclose</span>关闭文件指针,以避免文件句柄被占用。</code>
登入後複製

判斷檔案是否存在:

<code>一般情况下在对文件进行操作的时候需要先判断文件是否存在,PHP中常用来判断文件存在的函数有
两个is_file与file_exists.

<span>$filename</span> = <span>'./test.txt'</span>;
<span>if</span> (file_exists(<span>$filename</span>)) {
    <span>echo</span> file_get_contents(<span>$filename</span>);
}
如果只是判断文件存在,使用file_exists就行,file_exists不仅可以判断文件是否存在,同时也可以判
断目录是否存在,从函数名可以看出,
is_file是确切的判断给定的路径是否是一个文件。

<span>$filename</span> = <span>'./test.txt'</span>;
<span>if</span> (is_file(<span>$filename</span>)) {
    <span>echo</span> file_get_contents(<span>$filename</span>);
}
更加精确的可以使用is_readable与is_writeable在文件是否存在的基础上,判断文件是否可读与可写。

<span>$filename</span> = <span>'./test.txt'</span>;
<span>if</span> (is_writeable(<span>$filename</span>)) {
    file_put_contents(<span>$filename</span>, <span>'test'</span>);
}
<span>if</span> (is_readable(<span>$filename</span>)) {
    <span>echo</span> file_get_contents(<span>$filename</span>);
}</code>
登入後複製

寫入內容到檔案:

<code>与<strong>读取文件</strong>对应,PHP写文件也具有两种方式,最简单的方式是采用file_put_contents。

<span>$filename</span> = <span>'./test.txt'</span>;
<span>$data</span> = <span>'test'</span>;
file_put_contents(<span>$filename</span>, <span>$data</span>);
上例中,<span>$data</span>参数可以是一个一维数组,当<span>$data</span>是数组的时候,会自动的将数组连接起来,
相当于<span>$data</span>=implode(<span>''</span>, <span>$data</span>);

同样的,PHP也支持类似C语言风格的操作方式,采用<span>fwrite</span>进行文件写入。

<span>$fp</span> = <span>fopen</span>(<span>'./test.txt'</span>, <span>'w'</span>);
<span>fwrite</span>(<span>$fp</span>, <span>'hello'</span>);
<span>fwrite</span>(<span>$fp</span>, <span>'world'</span>);
<span>fclose</span>(<span>$fp</span>);</code>
登入後複製

刪除檔案:

<code>文件有很多元属性,包括:文件的所有者、创建时间、修改时间、最后的访问时间等。

fileowner:获得文件的所有者
filectime:获取文件的创建时间
filemtime:获取文件的修改时间
fileatime:获取文件的访问时间
其中最常用的是文件的修改时间,通过文件的修改时间,可以判断文件的时效性,经常用在静态
文件或者缓存数据的更新。

<span>$mtime</span> = filemtime(<span>$filename</span>);
<span>echo</span><span>'修改时间:'</span>.date(<span>'Y-m-d H:i:s'</span>, filemtime(<span>$filename</span>));</code>
登入後複製

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i

').text(i)); }; $numbering.fadeIn(1700); }); });


以上就介紹了61 檔案系統,包含了讀取檔案方面的內容,希望對PHP教學有興趣的朋友有幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板