background image

PHP 代码:PHP 读取文件并可支持远程文件的代码

PHP

 

技巧:读取文件并可支持远程文件,给出三个案例,让你更容易理解 php 读取文件

php

 

读取文件

 

 

案例一

 

复制代码 代码如下:
 
<?php 

$file

 = 'jb51.net.php'; 

//

 

本案例不支持远程

$fso

 = 

fopen

(

$file

, 'r'); 

echo

 

$data

 = 

fread

(

$fso

filesize

(

$file

)); 

fclose(

$fso

); 

?> 
 

fopen

() 

 

将 file 指定的名字资源绑定到一个流上. 

filesize

 返回文件大小的字节数,

 

如果出错返回 FALSE. 

注: 

 

因为 PHP 的整数类型是有符号的,

 

并且大多数平台使用 32 位整数,

filesize

() 函数在碰到

 

大于 2GB 的文件时可能会返回非预期的结果.

 

对于 2GB   

到 4GB 之间的文件通常可以使用 

sprintf("%u", 

filesize

(

$file

)) 来克服此问题. 

fread

() 

 

从文件指针 handle 

 

读取最多 length 个字节. 

 

该函数在读取完 length 个字节数,或到

 

达 EOF 的时候,或(对于网络流)当一个包可用时就会停止读取文件,视乎先碰到哪种情况. 
说明:低版本用法!建议 php5 用

file_get_contents

 

 

 

案例二

 

复制代码 代码如下:
 
<?php 

$file

 = 'jb51.net.php'; 

//

 

支持远程

$file

 = '';// 

echo

 

$data

 = implode('', file(

$file

)); 

?> 
 
file -- 

 

把整个文件读入一个数组中

 

说明

 

读取二进制的文件
 

 

案例三

 

复制代码 代码如下: