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 相关文章推荐
linux下使用ThinkPHP需要注意大小写导致的问题
Aug 02 PHP
我的php学习笔记(毕业设计)
Feb 21 PHP
PHP数据类型的总结分析
Jun 13 PHP
PHP SPL标准库之接口(Interface)详解
May 11 PHP
PHP正则表达式过滤html标签属性(DEMO)
May 04 PHP
一个简单安全的PHP验证码类、PHP验证码
Sep 24 PHP
ThinkPHP实现附件上传功能
Apr 27 PHP
PHP与JavaScript针对Cookie的读写、交互操作方法详解
Aug 07 PHP
Yii2框架自定义验证规则操作示例
Feb 08 PHP
ThinkPHP框架实现FTP图片上传功能示例
Apr 08 PHP
YII框架实现自定义第三方扩展操作示例
Apr 26 PHP
Yii框架实现对数据库的CURD操作示例
Sep 03 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得到mssql的存储过程的输出参数功能实现
2012/11/23 PHP
yiic命令时提示“php.exe”不是内部或外部命令的解决方法
2014/12/18 PHP
ThinkPHP防止重复提交表单的方法实例分析
2018/05/10 PHP
PHP配置ZendOpcache插件加速
2019/02/14 PHP
修改发贴的编辑功能
2007/03/07 Javascript
JavaScript解析URL参数示例代码
2013/08/12 Javascript
Javascript Web Slider 焦点图示例源码
2013/10/10 Javascript
利用jQuery实现WordPress中@的ID悬浮显示评论内容
2015/12/11 Javascript
学习JavaScript设计模式之享元模式
2016/01/18 Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
2016/02/04 Javascript
JavaScript 链式结构序列化详解
2016/09/30 Javascript
Angular2使用jQuery的方法教程
2017/05/28 jQuery
AngularJS常见过滤器用法实例总结
2017/07/06 Javascript
angular.js和vue.js中实现函数去抖示例(debounce)
2018/01/18 Javascript
JS获取input[file]的值并显示在页面的实现方法
2018/03/09 Javascript
详解如何使用router-link对象方式传递参数?
2019/05/02 Javascript
React服务端渲染原理解析与实践
2021/03/04 Javascript
python实现决策树
2017/12/21 Python
详解python字节码
2018/02/07 Python
Python元组及文件核心对象类型详解
2018/02/11 Python
在python中利用GDAL对tif文件进行读写的方法
2018/11/29 Python
python颜色随机生成器的实例代码
2020/01/10 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
解决Windows下python和pip命令无法使用的问题
2020/08/31 Python
CSS3田字格列表的样式编写方法
2018/11/22 HTML / CSS
html5 offlline 缓存使用示例
2013/06/24 HTML / CSS
土耳其时尚潮流在线购物网站:Trendyol
2017/10/10 全球购物
美国领先的在线旅游网站:Orbitz
2018/11/05 全球购物
医学护理系毕业生求职信
2013/10/01 职场文书
应用数学自荐书范文
2013/11/24 职场文书
建设单位项目负责人任命书
2014/06/06 职场文书
房屋买卖协议样本
2014/11/16 职场文书
2014年学校工作总结
2014/11/20 职场文书
趣味运动会开幕词
2015/01/28 职场文书
化验员岗位职责
2015/02/14 职场文书
卫生主题班会
2015/08/14 职场文书