abstract:<?php /*文件信息相关的函数 filetype() 获取文件类型,传入的是文件路径 filesize() 获取文件大小 传入的是文件路径 date_default_timezone_set('Asia/shanghai'); 设置时区 filectime() 获取文件创建时间,格式化时间 
<?php /*文件信息相关的函数 filetype() 获取文件类型,传入的是文件路径 filesize() 获取文件大小 传入的是文件路径 date_default_timezone_set('Asia/shanghai'); 设置时区 filectime() 获取文件创建时间,格式化时间 date('Y-m-d',filectime($filename)); filemtime() 获取文件修改时间 fileatime() 获取文件最后访问的时间 is_readable() 查询文件权限,判断文件是否可读,返回布尔值 is_writable() 检查文件可写性 is_executable() 检查文件的可执行性 */ date_default_timezone_set('Asia/shanghai'); $filename = 'text.txt'; //获取文件类型 echo filetype($filename),'<br>'; //获取文件大小 echo filesize($filename).'<br>'; //获取文件创建时间 echo '文件创建时间为:',date('Y-m-d H:i:s',filectime($filename)).'<br>'; //获取文件修改时间 echo '文件修改时间为:'.date('Y-m-d H:i:s',filemtime($filename)).'<br>'; //获取文件最后访问时间 echo '文件最后访问时间为:'.date('Y-m-d H:i:s',fileatime($filename)).'<br>'; //检查文件是否可读 var_dump(is_readable($filename)); //检查文件是否可写 var_dump(is_writable($filename)); //检查文件是否可执行 var_dump(is_executable($filename)); echo '<hr>'; /** * 文件路径相关的文件 * */ //返回文件路径信息 echo '<pre>'; var_dump(pathinfo($filename)); echo '</pre>'; // 给pathinfo加上第二个参数PATHINFO_DIRNAME就可以获取文件的目录部分 echo pathinfo($filename,PATHINFO_DIRNAME).'<br>'; //dirname() 直接获取文件目录部分 echo dirname($filename).'<br>'; //给pathinfo加上第二个参数PATHINFO_BASENAME 可以获取文件名称,这个包含文件后缀名 echo pathinfo($filename,PATHINFO_BASENAME).'<br>'; //basename() 直接获取文件名,含文件后缀名 echo basename($filename).'<br>'; //第二个参数加PATHINFO_EXTENSION 获取文件后缀名 echo pathinfo($filename,PATHINFO_EXTENSION)."<BR>"; //第二个参数加PATHINFO_FILENAME 获取文件名,不含后缀名 echo pathinfo($filename,PATHINFO_FILENAME).'<BR>'; //检查文件是否存在 if(true==file_exists($filename)){ echo '存在'; }else{ echo '不存在'; } echo '<hr>'; /** * 文件操作相关的函数 * */ //创建文件,还可以修改文件的访问时间和修改时间 //echo touch('text1.txt'); //if (file_exists('text1.txt')){ // if (unlink('text1.txt')){ // echo '删除成功'; // }else{ // echo '删除失败'; // } //}else{ // echo '文件不存在'; //} //rename 修改文件名或剪切文件 //var_dump(rename('text1.txt','demo/text2.txt')); //copy 复制文件 也能改名称 还可以拷贝远程的文件或图片 //var_dump(copy('text.txt','demo/text1.txt')); //var_dump(copy('http://img.php.cn/upload/course/000/000/014/5c304ba1aa085936.jpg','123.jpg')); echo '<hr>'; /** * 文件内容相关函数 */ //打开文件 二进制打开 $file = fopen('text.txt','rb'); //fread 读取文件内容 echo fread($file,filesize('text.txt'));
<?php /* 文件路径相关函数 pathinfo() 返回文件路径信息,返回的是一个数组 pathinfo() 第二个参数PATHINFO_DIRNAME 是一个常量 返回文件目录部分,第二个参数PATHINFO_BASENAME 获取文件名(文件名包括后缀),第二个参数PATHINFO_EXTENSION 获取文件后缀名,第二个参数PATHINFO_FILENAME 获取文件名(去掉后缀的文件名), dirname() 可以直接获取文件的目录部分 basename() 可以直接获取文件名 file_exists() 检查目录或文件是否存在 */ //打开文件,rb+ 表示二进制读取写入 //$file = fopen('text.txt','rb+'); // ////写入文件 fwrite 写入文件操作时 会覆盖对应字符数量 // //var_dump(fwrite($file,'PHP中文网')); //var_dump(fwrite($file,''.PHP_EOL));//换行 // ////fputs 和fwrite的功能是一样的 //var_dump(fputs($file,'我们说好的。')); // //fclose($file); $file = fopen('text.txt','ab+'); var_dump(fputs($file,'我用写入方式,不清空内容.')); echo ftell($file); rewind($file); echo fread($file,filesize('text.txt'));
<?php /** * 文件读取其他函数 * fgetc() 从文件中获取一个字符 * fgets() 从文件中获取一行字符 * fgetss() 从文件中获取一行字符,并过滤html * */ $file = fopen('text.txt','rb+'); echo fgetc($file).'<br>'; //获取一个字符 echo fgets($file).'<br>'; //获取一行 echo fgetss($file).'<br>'; //获取一行并过滤html rewind($file); while(!feof($file)){ echo fgetc($file); } echo '<hr>'; //ftruncate 截取文件内容为指定长度,会改变文件大小,返回的是一个布尔值 var_dump(ftruncate($file,10));
<?php /** * csv格式文件函数 * fgetcsv(文件路径,长度,字段分隔符) 读取csv文件内容,长度必须大于 CVS 文件内最长的一行。输出的是一个数组 * fputcsv 写入csv文件内容 */ $file = fopen('text.csv','rb+'); //读取csv文件 //var_dump(fgetcsv($file)); echo '<pre>'; //while ($row=fgetcsv($file)){ // print_r($row); //} $data = [ [1,'html','略懂'], [2,'js','不懂'], [3,'php','正在学'] ]; //写入csv文件 //var_dump(fputcsv($file,$data)); // //遍历数组写入 //foreach ($data as $v){ // fputcsv($file,$v,'~'); //} while ($row = fgetcsv($file,18,'~')){ print_r($row); }
<?php /** * 文件内容相关其他函数 * file_get_contents() 获取文件内容,不用打开文件 不能过滤html * file_put_contents() 写入文件内容,不用打开文件 文件存在会清空文件内容再写入,文件不存在则自动创建,若要追加数据而不覆盖原内容,需要传入第三个参数FILE_APPEND * strip_tags() 过滤html */ //echo file_get_contents('text2.txt');//读取文件内容 //file_put_contents('text2.txt','php中文网',FILE_APPEND); //追加写入 $data = [ 'name'=>'韦小宝', 'age'=>'23' ]; //var_dump(file_put_contents('text.txt',serialize($data))); //使用序列化来进转换数组 然后写入 //var_dump(unserialize(file_get_contents('text.txt'))); //反序列化,将序列化的代码转换为之前的样子 //file_put_contents('text2.txt',json_encode($data)); //将数组转换为json格式并写入到文件 var_dump(json_decode(file_get_contents('text2.txt'))); //json_decode 将json格式的文件反转换 echo '<hr>'; /** * 常用目录相关的函数 */ //打开目录 $dir = opendir('demo'); //遍历输出目录下的文件 while($row = readdir($dir)){ if($row != '.' && $row != '..'){ echo $row.'<br>'; } } //rmdir('text'); //删除目录text //mkdir('text/txt2',0777,true);//嵌套创建文件夹 //unlink('text/txt2/11.txt');// 删除目录前要先删除目录下的文件 rmdir('text/txt2');//删除目录txt2
Correcting teacher:查无此人Correction time:2019-01-14 18:07:25
Teacher's summary:完成的不错。有些常用的函数一定要牢记,加油。