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出现Cannot modify header information问题的解决方法大全
Apr 09 PHP
php array_search() 函数使用
Apr 13 PHP
xml在joomla表单中的应用详解分享
Jul 19 PHP
表格展示无限级分类(PHP版)
Aug 21 PHP
探讨:使用XMLSerialize 序列化与反序列化
Jun 08 PHP
phpQuery占用内存过多的处理方法
Nov 13 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
Sep 29 PHP
php中动态修改ini配置
Oct 14 PHP
UPUPW 更新 64 位 Apache 系列 PHP 7.0 正式版
Dec 08 PHP
php连接mysql数据库
Mar 21 PHP
使用laravel的Eloquent模型如何获取数据库的指定列
Oct 17 PHP
PHP防止sql注入小技巧之sql预处理原理与实现方法分析
Dec 13 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中str_replace函数使用小结
2008/10/11 PHP
PHP日期时间函数的高级应用技巧
2009/05/16 PHP
php计划任务之验证是否有多个进程调用同一个job的方法
2015/12/07 PHP
php reset() 函数指针指向数组中的第一个元素并输出实例代码
2016/11/21 PHP
jquery 学习之二 属性(html()与html(val))
2010/11/25 Javascript
jquery事件机制扩展插件 jquery鼠标右键事件。
2011/12/26 Javascript
js操作label给label赋值及取label的值示例
2013/11/07 Javascript
js加密解密字符串可自定义密码因子
2014/05/13 Javascript
JS简单操作select和dropdownlist实例
2014/11/26 Javascript
node.js中的fs.appendFileSync方法使用说明
2014/12/17 Javascript
jQuery结合HTML5制作的爱心树表白动画
2015/02/01 Javascript
使用Raygun对Node.js应用进行错误处理的方法
2015/06/23 Javascript
vue分页组件table-pagebar使用实例解析
2020/11/15 Javascript
JS数组交集、并集、差集的示例代码
2017/08/23 Javascript
Angularjs cookie 操作实例详解
2017/09/27 Javascript
JS设计模式之单例模式(一)
2017/09/29 Javascript
JS扩展String.prototype.format字符串拼接的功能
2018/03/09 Javascript
webpack+react+antd脚手架优化的方法
2018/04/02 Javascript
浅谈如何通过node.js对数据进行MD5加密
2018/05/16 Javascript
[02:44]DOTA2英雄基础教程 魅惑魔女
2014/01/07 DOTA
编写同时兼容Python2.x与Python3.x版本的代码的几个示例
2015/03/30 Python
Python中字符串格式化str.format的详细介绍
2017/02/17 Python
Python3实现发送QQ邮件功能(文本)
2017/12/15 Python
Python数据分析之获取双色球历史信息的方法示例
2018/02/03 Python
python如何在列表、字典中筛选数据
2018/03/19 Python
Python多进程原理与用法分析
2018/08/21 Python
python自动发邮件总结及实例说明【推荐】
2019/05/31 Python
一行Python代码过滤标点符号等特殊字符
2019/08/12 Python
澳大利亚礼品篮网站:Macarthur Baskets
2019/10/14 全球购物
医学检验专业大学生求职信
2013/11/18 职场文书
函授本科自我鉴定
2014/02/04 职场文书
三峡导游词
2015/01/31 职场文书
停电放假通知
2015/04/14 职场文书
初中生物教学反思
2016/02/20 职场文书
教你使用Python pypinyin库实现汉字转拼音
2021/05/27 Python
SpringBoot集成Druid连接池连接MySQL8.0.11
2021/07/02 Java/Android