php中文件操作常用函数有哪些

一、总结

一句话总结:读写文件函数 判断文件或者目录是否存在函数 创建目录函数

file_exists() mkdir() file_get_content() file_put_content()

1、php检查文件或者目录是否存在函数是什么?

file_exists()

file_exists — 检查文件或目录是否存在

<?php
$filename = '/path/to/foo.txt'; if (file_exists($filename)) {
echo "The file $filename exists";
} else {
echo "The file $filename does not exist";
}
?>

2、php创建一个目录的函数是什么?

mkdir()  $ans=mkdir($file_path,0777,true);

mkdir — 新建目录

$ans=mkdir ($file_path,0777,true);

二、php中如何创建文件夹

参考:php中如何创建文件夹
https://www.cnblogs.com/modou/p/5991365.html

这个功能比较简单,直接上代码了:

        $dir = iconv("UTF-8", "GBK", "Public/bookcover");
if (!file_exists($dir)){
mkdir ($dir,0777,true);
echo '创建文件夹bookcover成功';
} else {
echo '需创建的文件夹bookcover已经存在';
}

iconv方法是为了防止中文乱码,保证可以创建识别中文目录,不用iconv方法格式的话,将无法创建中文目录

mkdir方法的第一个参数是要创建的目录路径,第二个参数是指创建目录的权限,在windows系统下该参数会被忽略,第三个参数是指是否创建多级目录,默认为false

 
 

三、php 判断文件或目录是否存在

参考:php 判断文件或目录是否存在
https://www.cnblogs.com/diony/p/5541458.html

判断文件或目录是否存在有自带的函数

file_exists:文件是否存在

$file = "check.txt";

if(file_exists($file))
{
    echo "当前目录中,文件".$file."存在";
}
else
{
     echo "当前目录中,文件".$file."不存在";
}

is_dir:目录是否存在

$dir = "c:/datacheck";

if(is_dir($dir))
{
    echo "当前目录下,目录".$dir."存在";
}
else
{
     echo "当前目录下,目录".$dir."不存在";
}

四、thinkphp5自写的文件缓存代码

     //5、【下一题】按钮逻辑---确定这道题目开始的做题时间
public function question_next(){
$back_data=[];
$back_data['operation_success']=false;
if(request()->isAjax()){
$question_index_num=input('question_index_num');
$dataIn=[];
$dataIn['space_type']=input('space_type');
$dataIn['xiulian_type']=input('xiulian_type');
$dataIn['sort_type']=input('sort_type');
$dataIn['time_type']=input('time_type'); //2.1、取出缓存
$question_list_path='data_record/blog_question_record/'.$dataIn['space_type'].'/sort_type_'.$dataIn['sort_type'].'/time_'.$dataIn['time_type'].'/xiulian_type_'.$dataIn['xiulian_type'].'.php';
if(file_exists($question_list_path)) {
$back_data['operation_success']=true;
$question_list = file_get_contents($question_list_path);
$question_list = json_decode($question_list, true); //2.2、确定题目的开始时间
$question_list[$question_index_num]['bq_question_begin_time']=time();
$back_data['bq_question_begin_time']=time();
//2.4、提交缓存
$createDirAns=\app\index\model\tools\file\Directory::createDir($question_list_path);
if($createDirAns){
$result=file_put_contents($question_list_path,json_encode($question_list));
//dump($result);
$back_data['cache_result']=$result;
}
} return $back_data;
}
return $back_data;
}
 <?php
namespace app\index\model\tools\file;
use app\index\model\Base; class Directory extends Base
{
//1、创建指定目录的文件夹
public static function createDir($file_path){ $dir = iconv("GBK", "UTF-8", "$file_path");
//步骤一:去掉文件路径的文件名,只留下文件名
$file_arr=explode('/',$file_path);
//1、去掉为空的
$file_arr_new=[];
foreach ($file_arr as $key=>$val){
if(strlen($val)>=1) $file_arr_new[]=$val;
}
$file_arr=$file_arr_new;
array_pop($file_arr);
$file_path=implode('/',$file_arr);
if (!file_exists($file_path)){
$ans=mkdir ($file_path,0777,true);
if($ans===false) return false;
return true;
} else {
return true;
}
}
}
 

php中文件操作常用函数有哪些的更多相关文章

  1. PHP的文件操作常用函数

    PHP文件操作 1 获得文件名:basename - 返回路径中的文件名部分 给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件名.如果文件名是以 suffix 结束的,那这一部分也会被 ...

  2. PHP文件操作常用函数总结

    一 .解析路径: 1 获得文件名: basename(); 给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件名.如果文件名是以 suffix 结束的,那这一部分也会被去掉. eg: $ ...

  3. Delphi7文件操作常用函数

    1. AssignFile.Erase AssignFile procedure AssignFile(var F; FileName: string);:给文件变量连接一个外部文件名.这里需要注意的 ...

  4. python 文件操作: 文件操作的函数, 模式及常用操作.

    1.文件操作的函数: open("文件名(路径)", mode = '模式', encoding = "字符集") 2.模式: r , w , a , r+ , ...

  5. python 文件操作的函数

    1. 文件操作的函数 open(文件名(路径), mode="?", encoding="字符集") 2. 模式: r, w, a, r+, w+, a+, r ...

  6. 【PHP】最详细PHP从入门到精通(三)——PHP中的数组常用函数汇总

     PHP从入门到精通 之PHP中的数组常用函数详解 数组作为PHP中最常用的结构之一,PHP强大的数组函数功能,给数组的相关操作带来了极大的便利.今天给大家介绍的PHP中数组函数,是PHP数组中重要的 ...

  7. go语言之进阶篇字符串操作常用函数介绍

    下面这些函数来自于strings包,这里介绍一些我平常经常用到的函数,更详细的请参考官方的文档. 一.字符串操作常用函数介绍 1.Contains func Contains(s, substr st ...

  8. C#文件操作常用相关类(Directory类、File类、Path类)

    1.文件操作常用相关类 1)File //操作文件,静态类,对文件整体操作.拷贝.删除.剪切等 2)Directory //操作目录(文件夹),静态类 3)DirectoryInfo //文件夹的一个 ...

  9. python中文件操作的其他方法

    前面介绍过Python中文件操作的一般方法,包括打开,写入,关闭.本文中介绍下python中关于文件操作的其他比较常用的一些方法. 首先创建一个文件poems: p=open('poems','r', ...

随机推荐

  1. 【题解】Luogu P3217 [HNOI2011]数矩形

    原题链接:P3217 [HNOI2011]数矩形 什么??!怎么又是计算几何,您钛毒瘤了-- 这道题真的是毒瘤 凸包?旋转卡壳? 看一下数据,N<=1500? 暴力 没错,就是暴力,N^2没毛病 ...

  2. 【4Opencv】如何识别出轮廓准确的长和宽

    问题来源: 实际项目中,需要给出识别轮廓的长度和宽度. 初步分析: 轮廓分析的例程为: int main( int argc, char** argv ){    //read the image  ...

  3. ThreadPoolExecutor线程池

    为什么使用线程池: 1.创建/销毁线程伴随着系统开销,过于频繁的创建/销毁线程,会很大程度上影响处理效率. 2.线程并发数量过多,抢占系统资源从而导致阻塞. 3.对线程进行一些简单的管理. 在java ...

  4. Actions对Element的一些操作解析

    针对Chrome浏览器: 在自动化测试的编写中如果报出Element is not visible to click at xxxx point时,我会使用: new Actions(WebDrive ...

  5. topcoder srm 360 div1

    problem1 link (1)$n \neq m$时,假设$n<m$,那么同一行中的$m$个数字必定都相等. (2)$n=m$时,要满足任意的$i_{1},i_{2},j_{1},j_{2} ...

  6. Web开发中B/S架构和C/S架构的区别

    在web开发中有两种基本架构,即C/S架构和B/S架构那么这两种架构有什么区别呢?那么就一起来看看吧. C/S架构图: B/S架构图: C/S架构是 浏览/服务器端的交互,是早期的一种分布式架构,在该 ...

  7. SCU 4445 Right turn(dfs)题解

    思路:离散化之后,直接模拟就行,标记vis开三维 代码: #include<iostream> #include<algorithm> #include<cstdio&g ...

  8. 推荐一个静态博客兼笔记的工具:WDTP

    简介 WDTP(山湖录)不止是一款开源免费的GUI桌面单机版静态网站生成器和简单方便的前端开发工具,更是一款跨平台的集笔记.录音.个人知识管理.写作/创作.博客/网站内容与样式管理等功能于一体的多合一 ...

  9. 【原理、应用】Quartz集群原理及配置应用

    一.Quartz任务调度的基本实现原理 Quartz是OpenSymphony开源组织在任务调度领域的一个开源项目,完全基于Java实现.作为一个优秀的开源调度框架,Quartz具有以下特点: 强大的 ...

  10. x=x+1,x+=1,及x++的效率哪个最高,为什么?

    x=x+1: 1.     读取右X的地址 2.     X+1 3.     读取左X的地址 4.     将右值传给左边的X x+=1: 1.     读取右边的x的地址 2.     X+1 3 ...