PHP文件操作详解


Posted in PHP onDecember 30, 2016

本文实例为大家分享了PHP文件操作的具体代码,供大家参考,具体内容如下

(1)文件读取

file_get_contents( )

实例:

<?php 

// 文件部分 文件的读取

// 要求把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: 关闭

实例:

<?php

/*
 文件操作之
 fopen
 fread
 fwrite
 fclose
*/


/*
fopen() 打开一个文件,返回一个句柄资源
fopen($filename,mode);
第二个参数是‘模式',如只读模式,读写模式等
返回值:资源
*/

$file = './162.html';
$fh = fopen($file,'r');

// 沿着上面返回的$file这个资源通道来读文件
echo fread($fh,10),'<br />';

// 返回 int(0),说明没有成功写入
// 原因:在于第二个mode参数,选的r,即只读打开
var_dump(fwrite($fh, '测试一下,能不能用'));

// 关闭资源
fclose($fh);


/*
r+读写模式,并把指针指向文件头
写入成功
注:从文件头,写入时,覆盖相等字节的字符
*/
$fh = fopen($file, 'r+');
echo fwrite($fh, 'hello') ? 'success': 'fail','<br />';
fclose($fh);


/*
w:写入模式(fread读不了)
并把文件大小截为0
指针停于开头处
*/
echo '<br />';
$fh = fopen('./test.txt', 'w');
fclose($fh);
echo "ok!";

(3)文件是否存在、修改时间

filemtime

<?php

/*
判断文件是否存在
获取文件的创建时间/修改时间
*/ 

$file = './students.txt';
if (file_exists($file)) {
 echo $file,"存在 <br />";
 echo '上次修改时间是:',date('Y-m-d,H:i:s',filemtime($file));
}else{
 echo "不存在";
}

Demo地址 : Demo6-file操作

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
针对初学PHP者的疑难问答(2)
Oct 09 PHP
PHP clearstatcache()函数详解
Mar 02 PHP
解决PHP在DOS命令行下却无法链接MySQL的技术笔记
Dec 29 PHP
介绍一些PHP判断变量的函数
Apr 24 PHP
php检测用户是否用手机(Mobile)访问网站的类
Jan 09 PHP
PHP JSON出错:Cannot use object of type stdClass as array解决方法
Aug 16 PHP
搭建Vim为自定义的PHP开发工具的一些技巧
Dec 11 PHP
thinkphp整合微信支付代码分享
Nov 24 PHP
redis查看连接数及php模拟并发创建redis连接的方法
Dec 15 PHP
thinkphp实现附件上传功能
May 26 PHP
PHP实现的基于单向链表解决约瑟夫环问题示例
Sep 30 PHP
PHP实现简单的协程任务调度demo示例
Feb 01 PHP
PHP实现二维数组根据key进行排序的方法
Dec 30 #PHP
CI框架实现框架前后端分离的方法详解
Dec 30 #PHP
php mysql实现mysql_select_db选择数据库
Dec 30 #PHP
phalcon model在插入或更新时会自动验证非空字段的解决办法
Dec 29 #PHP
微信公众号模板消息群发php代码示例
Dec 29 #PHP
PHP实现截取中文字符串不出现?号的解决方法
Dec 29 #PHP
详解thinkphp实现excel数据的导入导出(附完整案例)
Dec 29 #PHP
You might like
在PHP中利用wsdl创建标准webservice的实现代码
2011/12/07 PHP
如何在Ubuntu下启动Apache的Rewrite功能
2013/07/05 PHP
curl实现站外采集的方法和技巧
2014/01/31 PHP
php强制运行广告的方法
2014/12/01 PHP
php写app接口并返回json数据的实例(分享)
2017/05/20 PHP
PHP实现cookie跨域session共享的方法分析
2019/08/23 PHP
javascript void(0)的妙用
2009/10/21 Javascript
javascript 面向对象 function类
2010/05/13 Javascript
jQuery操作checkbox选择(list/table)
2013/04/07 Javascript
深入理解JavaScript 闭包究竟是什么
2013/04/12 Javascript
Jquery显示和隐藏元素或设为只读(含Ligerui的控件禁用,实例说明介绍)
2013/07/09 Javascript
JS 获取浏览器和屏幕宽高等信息的实现思路及代码
2013/07/31 Javascript
javascript实现起伏的水波背景效果
2016/05/16 Javascript
JS实现pasteHTML兼容ie,firefox,chrome的方法
2016/06/22 Javascript
详谈JS中数组的迭代方法和归并方法
2017/08/11 Javascript
Vue2.0设置全局样式(less/sass和css)
2017/11/18 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
2018/07/30 Javascript
Python实现的简单万年历例子分享
2014/04/25 Python
Python读取键盘输入的2种方法
2015/06/16 Python
JSON Web Tokens的实现原理
2017/04/02 Python
简述:我为什么选择Python而不是Matlab和R语言
2017/11/14 Python
pandas 按照特定顺序输出的实现代码
2018/07/10 Python
从请求到响应过程中django都做了哪些处理
2018/08/01 Python
python 对给定可迭代集合统计出现频率,并排序的方法
2018/10/18 Python
对Python3 pyc 文件的使用详解
2019/02/16 Python
开启Django博客的RSS功能的实现方法
2020/02/17 Python
Django CSRF认证的几种解决方案
2020/03/03 Python
python,Java,JavaScript实现indexOf
2020/09/09 Python
大二自我鉴定范文
2013/10/05 职场文书
会计专业自我鉴定范文
2013/12/29 职场文书
新学期红领巾广播稿
2014/01/14 职场文书
残疾人创业典型事迹
2014/02/01 职场文书
高中同学会致辞
2015/08/01 职场文书
遇事可以测出您的见识与格局
2019/09/16 职场文书
Matplotlib绘制混淆矩阵的实现
2021/05/27 Python
win10重装系统后上不了网怎么办 win10重装系统网络故障的解决办法
2022/07/23 数码科技