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+javascript模拟Matrix画面
Oct 09 PHP
PHP4与PHP5的时间格式问题
Feb 17 PHP
PHP 组件化编程技巧
Jun 06 PHP
php 魔术方法使用说明
Oct 20 PHP
PHP判断指定时间段的2个方法
Mar 14 PHP
PHP写日志的实现方法
Nov 05 PHP
SESSION存放在数据库用法实例
Aug 08 PHP
php简单复制文件的方法
May 09 PHP
PHP入门教程之上传文件实例详解
Sep 11 PHP
mac系统下安装多个php并自由切换的方法详解
Apr 21 PHP
Laravel 修改默认日志文件名称和位置的例子
Oct 17 PHP
基于php解决json_encode中文UNICODE转码问题
Nov 10 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中的串行化变量和序列化对象
2006/09/05 PHP
PHP面向对象五大原则之开放-封闭原则(OCP)详解
2018/04/04 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
2018/04/08 PHP
Laravel创建数据库表结构的例子
2019/10/09 PHP
检测是否已安装 .NET Framework 3.5的js脚本
2009/02/14 Javascript
增强用户体验友好性之jquery easyui window 窗口关闭时的提示
2012/06/22 Javascript
Json字符串转换为JS对象的高效方法实例
2013/05/01 Javascript
Javascript核心读书有感之语句
2015/02/11 Javascript
javascript实现继承的简单实例
2015/07/26 Javascript
Vuejs 组件——props数据传递的实例代码
2017/03/07 Javascript
微信小程序自动客服功能
2017/11/02 Javascript
Vue2.0系列之过滤器的使用
2018/03/01 Javascript
浅谈Node.js 沙箱环境
2018/05/15 Javascript
Vue中的v-for循环key属性注意事项小结
2018/08/12 Javascript
VUE 解决mode为history页面为空白的问题
2019/11/01 Javascript
jQuery实现滑动星星评分效果(每日分享)
2019/11/13 jQuery
Vue 组件复用多次自定义参数操作
2020/07/27 Javascript
使用eslint和githooks统一前端风格的技巧
2020/07/29 Javascript
Vue的Options用法说明
2020/08/14 Javascript
vue+elementUI中表格高亮或字体颜色改变操作
2020/11/02 Javascript
Python中获取网页状态码的两个方法
2014/11/03 Python
python修改字典内key对应值的方法
2015/07/11 Python
python实现log日志的示例代码
2018/04/28 Python
Python3实现对列表按元组指定列进行排序的方法分析
2018/12/22 Python
Python流行ORM框架sqlalchemy安装与使用教程
2019/06/04 Python
wxPython实现文本框基础组件
2019/11/18 Python
通过cmd进入python的步骤
2020/06/16 Python
Python学习之路安装pycharm的教程详解
2020/06/17 Python
python如何支持并发方法详解
2020/07/25 Python
计算机专业自荐信
2013/10/14 职场文书
医学生求职自荐信
2013/10/25 职场文书
国家助学金获奖感言
2014/01/31 职场文书
新教师个人总结
2015/02/06 职场文书
入团介绍人意见范文
2015/06/04 职场文书
2015七夕情人节宣传语
2015/07/14 职场文书
工伤调解协议书
2016/03/21 职场文书