Jadual Kandungan
fread()
fgets()
fgetc()
file_get_contents()
file()
Rumah php教程 php手册 PHP 文件读取 fread、fgets、fgetc、file_get_contents 与 file 函数

PHP 文件读取 fread、fgets、fgetc、file_get_contents 与 file 函数

Oct 28, 2016 pm 03:03 PM

fread()、fgets()、fgetc()、file_get_contents() 与 file() 函数用于从文件中读取内容。

 

fread()

fread() 函数用于读取文件(可安全用于二进制文件)。
语法:

<span style="color: #0000ff">string</span> <span style="color: #008080">fread</span>( int handle, int length )
Salin selepas log masuk

fread() 从文件指针 handle 读取最多 length 个字节。当遇到下列任何一种情况时,会停止读取文件:

  • 在读取完最多 length 个字节数时
  • 达到文件末尾的时候(EOF)
  • (对于网络流)当一个包可用时
  • 或(在打开用户空间流之后)已读取了 8192 个字节时

从文件中读取 10 个字节(包括空格):

<span style="color: #000000">php
</span><span style="color: #008000">//</span><span style="color: #008000"> http://www.manongjc.com/article/1346.html</span>
<span style="color: #800080">$filename</span> = "test.txt"<span style="color: #000000">;
</span><span style="color: #800080">$fh</span> = <span style="color: #008080">fopen</span>(<span style="color: #800080">$filename</span>, "r"<span style="color: #000000">);
</span><span style="color: #0000ff">echo</span> <span style="color: #008080">fread</span>(<span style="color: #800080">$fh</span>, "10"<span style="color: #000000">);
</span><span style="color: #008080">fclose</span>(<span style="color: #800080">$fh</span><span style="color: #000000">);
</span>?>
Salin selepas log masuk

提示

如果只是想将一个文件的内容读入到一个字符串中,应该用性能更好的 file_get_contents() 。

 

fgets()

fgets() 函数用于从文件中读取 一行 数据,并将文件指针指向下一行。
提示:如果想在读取的时候去掉文件中的 HTML 标记,请使用 fgetss() 函数。
语法:

<span style="color: #0000ff">string</span> <span style="color: #008080">fgets</span>( int handle [, int length] )
Salin selepas log masuk

fgets() 从 handle 指向的文件中读取一行并返回长度最多为 length-1 字节的字符串。碰到换行符(包括在返回值中)、EOF 或者已经读取了 length-1 字节后停止。如果没有指定 length ,则默认为 1K ,或者说 1024 字节。
例子:

<span style="color: #000000">php
</span><span style="color: #800080">$fh</span> = @<span style="color: #008080">fopen</span>("test.txt","r") or <span style="color: #0000ff">die</span>("打开 test.txt 文件出错!"<span style="color: #000000">);
</span><span style="color: #008000">//</span><span style="color: #008000"> if条件避免无效指针
// http://www.manongjc.com/article/1347.html</span>
<span style="color: #0000ff">if</span>(<span style="color: #800080">$fh</span><span style="color: #000000">){
    </span><span style="color: #0000ff">while</span>(!<span style="color: #008080">feof</span>(<span style="color: #800080">$fh</span><span style="color: #000000">)) {
        </span><span style="color: #0000ff">echo</span> <span style="color: #008080">fgets</span>(<span style="color: #800080">$fh</span>), '<br>'<span style="color: #000000">;
    }
}
</span><span style="color: #008080">fclose</span>(<span style="color: #800080">$fh</span><span style="color: #000000">);
</span>?>
Salin selepas log masuk

补充说明

feof() 函数测试文件指针是否到了文件结束的位置,该文件指针必须有效,如果是无效的资源,则会陷入无限循环中。参见《PHP 文件指针函数》

 

fgetc()

fgetc() 函数用于 逐字 读取文件数据,直到文件结束。
语法:

<span style="color: #0000ff">string</span> <span style="color: #008080">fgetc</span>( <span style="color: #0000ff">resource</span> handle )
Salin selepas log masuk

例子:

<span style="color: #000000">php
</span><span style="color: #800080">$fh</span> = @<span style="color: #008080">fopen</span>("test.txt","r") or <span style="color: #0000ff">die</span>("打开 test.txt 文件出错!"<span style="color: #000000">);
</span><span style="color: #008000">//</span><span style="color: #008000"> http://www.manongjc.com/article/1348.html</span>
<span style="color: #0000ff">if</span>(<span style="color: #800080">$fh</span><span style="color: #000000">){
    </span><span style="color: #0000ff">while</span>(!<span style="color: #008080">feof</span>(<span style="color: #800080">$fh</span><span style="color: #000000">)) {
        </span><span style="color: #0000ff">echo</span> <span style="color: #008080">fgetc</span>(<span style="color: #800080">$fh</span><span style="color: #000000">);
    }
}
</span><span style="color: #008080">fclose</span>(<span style="color: #800080">$fh</span><span style="color: #000000">);
</span>?>
Salin selepas log masuk

 

file_get_contents()

file_get_contents() 函数用于把 整个文件 读入一个字符串,成功返回一个字符串,失败则返回 FALSE。
语法:

<span style="color: #0000ff">string</span> <span style="color: #008080">file_get_contents</span>( <span style="color: #0000ff">string</span> filename [, int offset [, int maxlen]] )
Salin selepas log masuk

参数说明:
参数    说明
filename    要读取的文件名称
offset    可选,指定读取开始的位置,默认为文件开始位置
maxlen    可选,指定读取文件的长度,单位字节
例子:

<span style="color: #000000">php
</span><span style="color: #008000">//</span><span style="color: #008000"> 读取时同事将换行符转换成 <br></span>
<span style="color: #0000ff">echo</span> <span style="color: #008080">nl2br</span>(<span style="color: #008080">file_get_contents</span>('test.txt'<span style="color: #000000">));
</span>?>
Salin selepas log masuk

 

file()

file() 函数用于把 整个文件 读入一个数组中,数组中的每个单元都是文件中相应的一行,包括换行符在内。成功返回一个数组,失败则返回 FALSE。
语法:

<span style="color: #0000ff">array</span> <span style="color: #008080">file</span>( <span style="color: #0000ff">string</span> filename )
Salin selepas log masuk

例子:

<span style="color: #000000">php
</span><span style="color: #800080">$lines</span> = <span style="color: #008080">file</span>('test.txt'<span style="color: #000000">);
</span><span style="color: #008000">//</span><span style="color: #008000"> 在数组中循环并加上行号
// http://www.manongjc.com/article/1349.html</span>
<span style="color: #0000ff">foreach</span> (<span style="color: #800080">$lines</span> <span style="color: #0000ff">as</span> <span style="color: #800080">$line_num</span> => <span style="color: #800080">$line</span><span style="color: #000000">) {
    </span><span style="color: #0000ff">echo</span> "Line #{<span style="color: #800080">$line_num</span>} : ",<span style="color: #800080">$line</span>,'<br>'<span style="color: #000000">;
}
</span>?>
Salin selepas log masuk

test.txt 文件内容:
你好!
这是第二行文字。
浏览器显示:
Line #0 : 你好!
Line #1 : 这是第二行文字。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)