PHP使用file_put_contents写入文件的优点
本篇文章由:http://xinpure.com/advantages-of-php-file-write-put-contents-to-a-file/
写入方法的比较
先来看看使用
fwrite是如何写入文件的
$filename = 'HelloWorld.txt';
$content = 'Hello World!';
$fh = fopen($filename, "w");
echo fwrite($fh, $content);
fclose($fh);
再看看使用
file_put_contents是如何写入文件的
$filename = 'HelloWorld.txt';
$content = 'Hello World!';
file_put_contents($filename, $content);
以上我们可以看出,file_put_contents 一行就代替了 fwrite 三行代码,
可见其优点: 简洁、易维护,也不会出现,因 fclose() 忘写的不严密行为。
方法进阶
追加写入
file_put_contents 写入文件时,默认是从头开始写入,如果需要追加内容呢?
在 file_put_contens 方法里,有个参数 FILE_APPEND,这是追加写入文件的声明。
file_put_contents(HelloWorld.txt, 'Hello World!', FILE_APPEND);
锁定文件
在写入文件时,为避免与其它人同时操作,通常会锁定此文件,这就用到了第二个参数: LOCK_EX
file_put_contents(HelloWorld.txt, 'Hello World!', FILE_APPEND|LOCK_EX);
此外,为了确保正确写入,通常会先判断该文件是否可写
if (is_writable('HelloWorld.txt')) {
file_put_contents(HelloWorld.txt, 'Hello World!', FILE_APPEND|LOCK_EX);
}
PHP使用file_put_contents写入文件的优点的更多相关文章
- 【转】用 PHP 内置函数 file_put_contents 写入文件
PHP 内置函数 file_put_contents 用于写入文件. file_put_contents 函数最简单的写法,可以只用两个参数,一个是文件路径,一个是要写入的内容,语法如下: file_ ...
- PHP写入文件用file_put_contents代替fwrite优点多多(转)
使用php有一段时间了,之前一直用fwrite写入文件,不过当我知道file_put_contents这个函数之后,fwrite就比较少用了,file_put_contents比fwrite代码更简洁 ...
- PHP内置函数file_put_content(),将数据写入文件,使用FILE_APPEND 参数进行内容追加
file_put_contents(fileName,data,flags,context) 入参说明: 参数 说明 fileName 要写入数据的文件名 data 要写入的数据.类型可以是 stri ...
- php file_put_contents() 写入回车
PHP file_put_contents() 函数是一次性向文件写入字符串或追加字符串内容的最合适选择. file_put_contents() file_put_contents() 函数用于把字 ...
- PHP fwrite 函数:将字符串写入文件(追加与换行)(转)
PHP fwrite() fwrite() 函数用于向文件写入字符串,成功返回写入的字符数,否则返回 FALSE . 语法: int fwrite( resource handle, string s ...
- 【php性能优化】关于写入文件操作的取舍方案
对于使用php对文件进行写入操作有两种方案一种使用 file_put_contents() 和 fopen()/fwrite()/fclose() 两种方案至于应该怎么选,我觉得应该分情况选择,下面是 ...
- php 数组写入文件
$fiele = '../data/conf/watermark.php';//指定要写入的文件 $param = $this->request->param(); $watermark ...
- php写入文件fwrite() 函数用法
在php中,php fwrite() 函数是用于写入文件(可安全用于二进制文件).说的简单点,就是在一个文件中,添加新的内容,本篇文章收集总结了几篇关于php写入文件fwrite() 函数用法的总结, ...
- 【php写日志】php将日志写入文件
php 写内容到文件,把日志写到log文件 <?php header("Content-type: text/html; charset=utf-8"); /******** ...
随机推荐
- JZYZOJ1384 种花小游戏 状压dp
http://172.20.6.3/Problem_Show.asp?id=1384 最开始以为是dfs然后超时了,然后调了半天调成dp,还不如再写一遍... 代码 #include<iost ...
- [xsy3241]暴风士兵
题意:一个血量为$h$的人,它会被攻击$n$次,第$i$次有$p$的概率$-1$滴血(每次的$p$不同),问每次攻击后他的血量期望,强制在线 若一个人被扣了$i$滴血的概率为$p_i$,那么记多项式$ ...
- html5上传图片php特殊处理一下
$file=$_POST['file']; if($file) { preg_match('|data:image/([a-zA-Z]+);base64,|s',$file,$match); $fil ...
- Nginx + Keeplived双主测试
Author: JinDate: 20130613Title: Nginx + Keeplived 双主测试 前言:一年多前做过一次测试,时间久了忘记了,现在又重新做一次 一.环境1.基本信息和规划p ...
- C# base64编码的字符串与图片互转
protected string ImgToBase64String(string Imagefilename) { try { Bitmap bmp = new Bitmap(Imagefilena ...
- cocos2d-x Cygwin编译 recipe for target `obj/local/armeabi/libcocos2d.so' fail 解决办法
在编译cocos2d-x的helloworld 或者 tests的时候. 官网上使用ndk4.ndk5,这里是使用 ndkr7b.ndkr8或ndkr8b .操作会简单很多,但是出了些小问题也是很坑人 ...
- js中定义变量的三种方式const,val,let 的区别
js中三种定义变量的方式const, var, let的区别. 1.const定义的变量不可以修改,而且必须初始化. 1 const b = 2;//正确 2 // const b;//错误,必须初始 ...
- minishift的本地代码构建
看文档说支持,但实际尝试了下,失败 发现仍然是找github中的代码 找了半天,发现是在目录下有.git的隐含目录,然后copy到其他目录下删除,然后再试,发现仍然失败. 日志看是指定的目录并没有传入 ...
- javascript不依赖JS加载顺序事件对象实现
背景: 在现在WEB开发中,稍复杂一点的页面,都会涉及到多个模块,尤其是类似seajs.LABjs.requireJS等模块工具出来后,前端开发者分模块开发已经慢慢变成一种习惯了,但是多个模块间的常常 ...
- Linux的进程间通信-文件和文件锁
前言 使用文件进行进程间通信应该是最先学会的一种IPC方式.任何编程语言中,文件IO都是很重要的知识,所以使用文件进行进程间通信就成了很自然被学会的一种手段.考虑到系统对文件本身存在缓存机制,使用文件 ...