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中显示格式化的用户输入
Oct 09 PHP
PHP中用header图片地址 简单隐藏图片源地址
Apr 09 PHP
PHP 分页原理分析,大家可以看看
Dec 21 PHP
php date与gmdate的获取日期的区别
Feb 08 PHP
PHP与C#分别格式化文件大小的代码
May 14 PHP
解析PHP中的正则表达式以及模式匹配
Jun 19 PHP
ThinkPHP之getField详解
Jun 20 PHP
smarty模板引擎中变量及变量修饰器用法实例
Jan 22 PHP
帝国cms常用标签汇总
Jul 06 PHP
php脚本运行时的超时机制详解
Feb 17 PHP
PHP面向对象程序设计继承用法简单示例
Dec 28 PHP
PHP 图片处理
Sep 16 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
加速XP搜索功能堪比vista
2007/03/22 PHP
Yii 框架使用数据库(databases)的方法示例
2020/05/19 PHP
基于jquery的超简单上下翻
2010/04/20 Javascript
jQuery 动画弹出窗体支持多种展现方式
2010/04/29 Javascript
从零开始学习jQuery (二) 万能的选择器
2010/10/01 Javascript
javascript中String类的subString()方法和slice()方法
2011/05/24 Javascript
js的匿名函数使用介绍
2013/12/11 Javascript
JS的document.all函数使用示例
2013/12/30 Javascript
js类式继承的具体实现方法
2013/12/31 Javascript
基于jQuery实现的美观星级评论打分组件代码
2015/10/30 Javascript
JS实现点击按钮获取页面高度的方法
2015/11/02 Javascript
js从外部获取图片的实现方法
2016/08/05 Javascript
判断div滑动到底部的scroll实例代码
2017/11/15 Javascript
JavaScript实现数值自动增加动画
2017/12/28 Javascript
js传递数组参数到后台controller的方法
2018/03/29 Javascript
详解创建自定义的Angular Schematics
2018/06/06 Javascript
JS回调函数简单易懂的入门实例分析
2019/09/29 Javascript
Python RabbitMQ消息队列实现rpc
2018/05/30 Python
flask应用部署到服务器的方法
2019/07/12 Python
django用户登录验证的完整示例代码
2019/07/21 Python
Python模块 _winreg操作注册表
2020/02/05 Python
Python数据可视化实现漏斗图过程图解
2020/07/20 Python
python 提高开发效率的5个小技巧
2020/10/19 Python
Pandas对每个分组应用apply函数的实现
2020/12/13 Python
惠普墨西哥官方商店:HP墨西哥
2016/12/01 全球购物
公益活动策划方案
2014/01/09 职场文书
5.1手机促销活动
2014/01/17 职场文书
企业军训感言
2014/02/08 职场文书
法定代表人授权委托书范文
2014/09/22 职场文书
实习指导教师评语
2014/12/30 职场文书
承诺函范文
2015/01/21 职场文书
劳动仲裁代理词范文
2015/05/25 职场文书
2016年社区国庆节活动总结
2016/04/01 职场文书
幼儿园教师辞职信
2019/06/21 职场文书
python 如何在 Matplotlib 中绘制垂直线
2021/04/02 Python
mysql 8.0.24版本安装配置方法图文教程
2021/05/12 MySQL