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

 更新时间:2020年01月23日 09:02:00   作者:luyaran  
这篇文章主要介绍了PHP检查文件是否存在,不存在自动创建及读取文件内容操作,结合实例形式分析了PHP针对文件的检测、创建、遍历、读取等相关操作技巧,需要的朋友可以参考下

本文实例讲述了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目录操作技巧汇总》、《PHP常用遍历算法与技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《PHP网络编程技巧总结

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

相关文章

  • PHP命名空间namespace定义及导入use用法详解

    PHP命名空间namespace定义及导入use用法详解

    这篇文章主要介绍了PHP命名空间namespace定义及导入use用法,结合实例形式详细分析了php中命名空间namespace的功能、定义及导入use相关使用方法与操作技巧,需要的朋友可以参考下
    2018-03-03
  • php简单图像创建入门实例

    php简单图像创建入门实例

    这篇文章主要介绍了php简单图像创建方法,实例分析了php图像创建的基本技巧,需要的朋友可以参考下
    2015-06-06
  • php 函数中静态变量使用的问题实例分析

    php 函数中静态变量使用的问题实例分析

    这篇文章主要介绍了php 函数中静态变量使用的问题,结合实例形式分析了php 函数中静态变量使用过程中遇到的问题,以及相关操作注意事项,需要的朋友可以参考下
    2020-03-03
  • linux下php上传文件注意事项

    linux下php上传文件注意事项

    这篇文章主要为大家详细介绍了linux下php上传文件注意事项,希望对大家安装php有所帮助,感兴趣的朋友可以参考一下
    2016-06-06
  • php性能优化分析工具XDebug 大型网站调试工具

    php性能优化分析工具XDebug 大型网站调试工具

    大型网站调试工具之一(php性能优化分析工具XDebug) ,开发php的朋友可以参考下。有助于解决php代码的多种问题。
    2011-05-05
  • php检测mysql表是否存在的方法小结

    php检测mysql表是否存在的方法小结

    这篇文章主要介绍了php检测mysql表是否存在的方法,结合实例形式总结分析了php使用pdo连接及mysql函数实现针对mysql表存在的判断方法,需要的朋友可以参考下
    2017-07-07
  • 基于PHP对XML的操作详解

    基于PHP对XML的操作详解

    本篇文章是关于PHP对XML的操作进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • 基于header的一些常用指令详解

    基于header的一些常用指令详解

    本篇文章是对header的一些常用指令进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP实现机器学习之朴素贝叶斯算法详解

    PHP实现机器学习之朴素贝叶斯算法详解

    这篇文章主要介绍了PHP实现机器学习之朴素贝叶斯算法,结合实例形式详细分析了朴素贝叶斯算法的概念、原理及php实现技巧,需要的朋友可以参考下
    2017-12-12
  • PHP 引用文件技巧

    PHP 引用文件技巧

    最近在学PHP,习惯性的喜欢把它与.NET作些比较,发现其中一个不同就是对其他文件中对象的引用问题。
    2010-03-03

最新评论