fread(), fgets(), fgetc(), file_get_contents() 및 file() 함수는 파일에서 내용을 읽는 데 사용됩니다.
fread() 함수는 파일을 읽는 데 사용됩니다(바이너리 파일에 안전함).
구문:
<span style="color: #0000ff">string</span> <span style="color: #008080">fread</span>( int handle, int length )
fread()는 파일 포인터 핸들에서 최대 length 바이트를 읽습니다. 다음 조건 중 하나라도 발생하면 파일 읽기가 중지됩니다.
파일에서 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>?>
팁
파일 내용을 문자열로 읽고 싶다면 file_get_contents()를 사용하면 성능이 더 좋아집니다.
fgets() 함수는 파일에서 데이터 라인을 읽고 파일 포인터가 다음 라인을 가리키는 데 사용됩니다.
팁: 파일을 읽을 때 HTML 태그를 제거하려면 fgetss() 함수를 사용하세요.
구문:
<span style="color: #0000ff">string</span> <span style="color: #008080">fgets</span>( int handle [, int length] )
fgets()는 핸들이 가리키는 파일에서 한 줄을 읽고 최대 길이-1바이트 길이의 문자열을 반환합니다. 개행 문자(반환 값에 포함됨), EOF 또는 length-1바이트를 읽은 후에 중지합니다. 길이를 지정하지 않으면 기본값은 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>?>
추가 지침
feof() 함수는 파일 포인터가 파일 끝에 도달했는지 테스트합니다. 파일 포인터가 유효해야 합니다. 잘못된 리소스인 경우 무한 루프에 빠집니다. "PHP 파일 포인터 기능"을 참조하세요
fgetc() 함수는 파일의 끝까지 파일 데이터를 한 단어씩 읽는 데 사용됩니다.
구문:
<span style="color: #0000ff">string</span> <span style="color: #008080">fgetc</span>( <span style="color: #0000ff">resource</span> handle )
예:
<?<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>?>
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]] )
매개변수 설명:
매개변수 설명
filename 읽을 파일 이름
offset 선택 사항, 읽기 시작 위치를 지정합니다. 기본값은 파일의 시작 위치입니다.
maxlen 선택 사항 , 읽기를 지정합니다. 파일 길이(바이트)
예:
<?<span style="color: #000000">php </span><span style="color: #008000">//</span><span style="color: #008000"> 读取时同事将换行符转换成 <br /> <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>?>
file() 함수는 전체 파일을 배열로 읽는 데 사용됩니다. 배열의 각 단위는 줄 바꿈을 포함하여 파일의 해당 줄입니다. 성공하면 배열을 반환하고, 실패하면 FALSE를 반환합니다.
구문:
<span style="color: #0000ff">array</span> <span style="color: #008080">file</span>( <span style="color: #0000ff">string</span> filename )
예:
<?<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>?>
test.txt 파일 내용:
안녕하세요!
텍스트의 두 번째 줄입니다.
브라우저 표시:
행 #0: 안녕하세요!
1번째 줄 : 텍스트의 두 번째 줄입니다.