本文实例为大家分享了PHP文件操作的具体代码,供大家参考,具体内容如下
(1)文件读取
file_get_contents( )
实例:
// 要求把a.txt的内容读取出来,赋值给str变量
/* file_get_contents()可以获取一个文件的内容或一个网络资源的内容
file_get_contents()是读取文件/读网络数据比较快捷的一个函数,帮我们封装了打开/关闭等操作
但是要小心,这个函数一次性把文件的内容读取出来,放内存里,因此工作中处理上百M的大文件,谨慎使用
*/
$file = 'a.txt';
$str = file_get_contents($file);
echo $str;
/
$url = 'http://www.163.com/';
$str = file_get_contents($url);
file_put_contents('162.html',$str);
/
// 读出来的内容,能否写入另一个文件里面
/*
file_put_contents() 这个函数用来把内容写入文件
也是一个快捷函数,帮我们封装打开写入关闭的细节
注:如果指定的文件不存在,则会自动创建
*/
file_put_contents('./b.txt',$str);
/
最简单的爬网页程序
/
$url = 'http://www.sina.com/';
$html = file_get_contents($url);
if (file_put_contents('sina.html',$html)) {
echo "抓过来了";
}else{
echo "抓错了";
}
(2)文件操作
fopen: 打开 fread : 读取 fwrite: 写入 fclose: 关闭
实例:
/
文件操作之
fopen
fread
fwrite
fclose
/
/
fopen() 打开一个文件,返回一个句柄资源
fopen($filename,mode);
第二个参数是‘模式',如只读模式,读写模式等
返回值:资源
/
$file = './162.html';
$fh = fopen($file,'r');
// 沿着上面返回的$file这个资源通道来读文件
echo fread($fh,10),'
';
// 返回 int(0),说明没有成功写入
// 原因:在于第二个mode参数,选的r,即只读打开
var_dump(fwrite($fh,'测试一下,能不能用'));
// 关闭资源
fclose($fh);
/
r+读写模式,并把指针指向文件头
写入成功
注:从文件头,写入时,覆盖相等字节的字符
/
$fh = fopen($file,'r+');
echo fwrite($fh,'hello') ? 'success': 'fail','
';
fclose($fh);
/
w:写入模式(fread读不了)
并把文件大小截为0
指针停于开头处
/
echo '
';
$fh = fopen('./test.txt','w');
fclose($fh);
echo "ok!";
(3)文件是否存在、修改时间
filemtime
$file = './students.txt';
if (file_exists($file)) {
echo $file,"存在
";
echo '上次修改时间是:',date('Y-m-d,H:i:s',filemtime($file));
}else{
echo "不存在";
}
Demo地址 : nofollow" target="_blank" href="https://github.com/Hanrovey/PHP-Learning">Demo6-file操作