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

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自写的文件缓存代码

 1     //5、【下一题】按钮逻辑---确定这道题目开始的做题时间
 2     public function question_next(){
 3         $back_data=[];
 4         $back_data['operation_success']=false;
 5         if(request()->isAjax()){
 6             $question_index_num=input('question_index_num');
 7             $dataIn=[];
 8             $dataIn['space_type']=input('space_type');
 9             $dataIn['xiulian_type']=input('xiulian_type');
10             $dataIn['sort_type']=input('sort_type');
11             $dataIn['time_type']=input('time_type');
12 
13             //2.1、取出缓存
14             $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';
15             if(file_exists($question_list_path)) {
16                 $back_data['operation_success']=true;
17                 $question_list = file_get_contents($question_list_path);
18                 $question_list = json_decode($question_list, true);
19 
20                 //2.2、确定题目的开始时间
21                 $question_list[$question_index_num]['bq_question_begin_time']=time();
22                 $back_data['bq_question_begin_time']=time();
23                 //2.4、提交缓存
24                 $createDirAns=appindexmodel	oolsfileDirectory::createDir($question_list_path);
25                 if($createDirAns){
26                     $result=file_put_contents($question_list_path,json_encode($question_list));
27                     //dump($result);
28                     $back_data['cache_result']=$result;
29                 }
30             }
31 
32             return $back_data;
33         }
34         return $back_data;
35     }
 1 <?php
 2 namespace appindexmodel	oolsfile;
 3 use appindexmodelBase;
 4 
 5 class Directory extends Base
 6 {
 7     //1、创建指定目录的文件夹
 8     public static function createDir($file_path){
 9 
10         $dir = iconv("GBK", "UTF-8", "$file_path");
11         //步骤一:去掉文件路径的文件名,只留下文件名
12         $file_arr=explode('/',$file_path);
13         //1、去掉为空的
14         $file_arr_new=[];
15         foreach ($file_arr as $key=>$val){
16             if(strlen($val)>=1) $file_arr_new[]=$val;
17         }
18         $file_arr=$file_arr_new;
19         array_pop($file_arr);
20         $file_path=implode('/',$file_arr);
21         if (!file_exists($file_path)){
22             $ans=mkdir ($file_path,0777,true);
23             if($ans===false) return false;
24             return true;
25         } else {
26             return true;
27         }
28     }
29 }
 
原文地址:https://www.cnblogs.com/Renyi-Fan/p/10651522.html