PHP检查文件是否存在,不存在自动创建及读取文件内容操作示例


Posted in PHP onJanuary 23, 2020

本文实例讲述了PHP检查文件是否存在,不存在自动创建及读取文件内容操作。分享给大家供大家参考,具体如下:

<?php
$filename = 'a/b.html';
$writetext = 'ssssssssssss';
$result = jwritefile($filename, $writetext);
var_dump($result);die;
function jwritefile($filename, $writetext) {
  $position = strrpos($filename,'/');
  $path = substr($filename,0,$position);
  if(!file_exists($path)){
    mkdir($path,0777,true);
  }
  $updatetime = filemtime($filename);
  $difftime = time()-$updatetime;
  if($difftime > 3600){//时间大于一个小时
    if (@file_put_contents($filename, $writetext, LOCK_EX)) {
      return 1;
    }else {
      return -1;
    }
  }else{
    return 0;//时间小于1一个钟头,不用生成
  }
}
?>
<?php
$filename = $path.'log/'.gmdate('Ym').'/'.gmdate('j').'.log';//文件地址
$position = strrpos($filename,'/');
$path = substr($filename,0,$position);
if(!file_exists($path)){
 mkdir($path,0777,true);//创建目录
}
$fp=@fopen($filename,"a+");
$content = $log."-".date('Y-m-d H:i:s')."\r\n";
@fputs($fp,$content);
@fclose($fp);
?>

读取文件内容

<?php
$handle = @fopen("/tmp/inputfile.txt", "r");
if ($handle) {
  while (!feof($handle)) {
    $buffer = fgets($handle, 4096);
    echo $buffer;
  }
  fclose($handle);
}
?>

附加说明:

fopen()mode 的可能值列表
mode 说明
'r' 只读方式打开,将文件指针指向文件头。
'r+' 读写方式打开,将文件指针指向文件头。
'w' 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
'w+' 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
'a' 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
'a+' 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
'x' 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给 底层的open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件。
'x+' 创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给 底层的open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
新版PHP将向Java靠拢
Oct 09 PHP
3种平台下安装php4经验点滴
Oct 09 PHP
用PHP实现的随机广告显示代码
Jun 14 PHP
php下图片文字混合水印与缩略图实现代码
Dec 11 PHP
php中关于codeigniter的xmlrpc的类在进行数据交换时的类型问题
Jul 03 PHP
PHP爆绝对路径方法收集整理
Sep 17 PHP
php中实现可以返回多个值的函数实例
Mar 21 PHP
php使用curl并发减少后端访问时间的方法分析
May 12 PHP
在Mac OS下搭建LNMP开发环境的步骤详解
Mar 10 PHP
详解PHP使用日期时间处理器Carbon人性化显示时间
Aug 10 PHP
php微信开发之音乐回复功能
Jun 14 PHP
Laravel 自动生成验证的实例讲解:login / logout
Oct 14 PHP
PHP实现一个按钮点击上传多个图片操作示例
Jan 23 #PHP
利用PHP内置SERVER开启web服务(本地开发使用)
Jan 22 #PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
Jan 22 #PHP
php经典趣味算法实例代码
Jan 21 #PHP
php利用ZipArchive类操作文件的实例
Jan 21 #PHP
Laravel 手动开关 Eloquent 修改器的操作方法
Dec 30 #PHP
Laravel 集成微信用户登录和绑定的实现
Dec 27 #PHP
You might like
PHP错误Parse error: syntax error, unexpected end of file in test.php on line 12解决方法
2014/06/23 PHP
PHP中soap的用法实例
2014/10/24 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
laravel-admin 中列表筛选方法
2019/10/03 PHP
怎么用javascript进行拖拽
2006/07/20 Javascript
js AspxButton的客户端操作
2009/06/26 Javascript
javascript arguments 传递给函数的隐含参数
2009/08/21 Javascript
Firebug入门指南(Firefox浏览器)
2010/08/21 Javascript
js截取小数点后几位的写法
2013/11/14 Javascript
Nodejs中自定义事件实例
2014/06/20 NodeJs
js脚本实现数据去重
2014/11/27 Javascript
js对象继承之原型链继承实例
2015/01/10 Javascript
JavaScript淡入淡出渐变简单实例
2015/08/06 Javascript
Javascript实现鼠标框选操作  不是点击选取
2016/04/14 Javascript
针对JavaScript中this指向的简单理解
2016/08/26 Javascript
jquery css实现邮箱自动补全
2016/11/14 Javascript
javascript基础练习之翻转字符串与回文
2017/02/20 Javascript
JS实现复制功能
2017/03/01 Javascript
Webpack 服务器端代码打包的示例代码
2017/09/19 Javascript
vue基于Element构建自定义树的示例代码
2017/09/19 Javascript
详解Vue 单文件组件的三种写法
2020/02/19 Javascript
vue ssr+koa2构建服务端渲染的示例代码
2020/03/23 Javascript
jQuery--遍历操作实例小结【后代、同胞及过滤】
2020/05/22 jQuery
Python获取系统默认字符编码的方法
2015/06/04 Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
2017/11/23 Python
详解Pytorch 使用Pytorch拟合多项式(多项式回归)
2018/05/24 Python
python跳过第一行快速读取文件内容的实例
2018/07/12 Python
在python里使用await关键字来等另外一个协程的实例
2020/05/04 Python
英国潮流网站:END.(全球免邮)
2017/01/16 全球购物
Mountain Warehouse德国官网:英国户外零售商
2019/08/11 全球购物
JD Sports西班牙:英国领先的运动服装公司
2020/01/06 全球购物
亿阳信通股份有限公司C#笔试题
2016/12/06 面试题
完美实现CSS垂直居中的11种方法
2021/03/27 HTML / CSS
英语道歉信范文
2014/01/09 职场文书
毕业寄语大全
2014/04/09 职场文书
建国大业电影观后感
2015/06/01 职场文书