PHP目录与文件操作技巧总结(创建,删除,遍历,读写,修改等)
本文实例总结了PHP目录与文件操作技巧。分享给大家供大家参考,具体如下:
Demo1.php
<?php //将一个路径赋给一个变量 //它目前来说,只是一个字符串,字符串表示的是一个目录的路径 //文件名包含,文件的名称+文件的扩展名(就是.后面的文件类型) //文件的扩展名说白了就是文件后缀 $path='C:\AppServ\www\Basic6\Demo1.php'; //echobasename($path); //echo'<br/>'; ////dirname--返回路径中的目录部分 ////dirname返回路径的目录部分 //echodirname($path); //echo'<br/>'; ////获取路径文件的信息 //print_r(pathinfo($path)); $array_path=pathinfo($path); echo$array_path['dirname'];//这个打印出的目录C:\AppServ\www\Basic6 echo$array_path['basename'];//这个打印出的是文件名Demo1.php ?>
Demo2.php
<?php //这个叫做绝对路径 //$path='C:\AppServ\www\Basic6\Demo2.php'; //这个叫做相对路径 //$path='Demo2.php'; //echo$path; $path='../index.php';//这也是相对路径 echorealpath($path); ?>
Demo3.php
<?php $path='C:\AppServ\www\Basic6\Demo3.php'; echoround(filesize($path)/1024,2).'KB'; ?>
Demo4.php
<?php //可用空间的查看disk_free_space echoround(disk_free_space('C:')/1024/1024/1024,2).'GB'; echo'<br/>'; //总空间 echoround(disk_total_space('C:')/1024/1024/1024,2).'GB'; ?>
Demo5.php
<?php $path='C:\AppServ\www\Basic1\Demo1.php'; //我们要做的是将这个时间戳翻译成正常的日期 //echofileatime($path); //调整一下时区 date_default_timezone_set('Asia/Shanghai'); //格式化一个本地日期 //echodate('Y-m-dH:i:s'); //fileatime--取得文件的上次访问时间 echo'最后访问:'.date('Y-m-dH:i:s',fileatime($path)).'<br/>'; //filectime--取得文件的inode修改时间,文件所有者,权限 echo'权限所有者等:'.date('Y-m-dH:i:s',filectime($path)).'<br/>'; //filemtime--取得文件修改时间,文件里面的内容修改后的时间 echo'内容修改时间:'.date('Y-m-dH:i:s',filemtime($path)); ?>
Demo6.php
<?php //打开一个文件 //第一参数表明哪个文件,第二参数表明模式,w只写 //w如果,file.txt已经有了,并且有数据了。那么这个文件,重新创建 //如果没有file.txt这个文件,那么我就自行创建 ////fopen--打开文件或者URL ////fopen返回的是资源类型resource,我们一般称它为句柄,或者叫资源句柄 //$fp=fopen('file.txt','w'); // ////想文件里写入一些数据 ////fwrite($fp,"阅谁问君诵,水落清香浮。"); // //$outString="阅谁问君诵,水落清香浮。"; //echostrlen($outString);//获取长度 //fwrite($fp,$outString,strlen($outString)); // ////fclose--关闭一个已打开的文件指针 ////当打开一个文件的时候,习惯性的将它关闭掉 //fclose($fp); //就只有一句话,不需要任何其他灵活的事情的使用 //这个比较在行,只有在PHP5的版本才可以使用 file_put_contents('file2.txt','阅谁问君诵,水落清香浮。'); ?>
Demo7.php
<?php //第一种写法 //\r\n可以让文本文件换行 $fp=fopen('file.txt','a'); $outString="阅谁问君诵,\r\n水落清香浮。\r\n"; fwrite($fp,$outString,strlen($outString)); fclose($fp); //第二种写法 //file_put_contents('file2.txt','阅谁问君诵,\r\n水落清香浮。'); ?>
Demo8.php
<?php //现在要读出文件 $fp=fopen('file.txt','r'); //fgetc--从文件指针中读取字符 //echofgetc($fp); //echofgetc($fp); //echofgetc($fp); //echofgetc($fp);//阅谁 //fgets--从文件指针中读取一行 //fread()从handle指向的文件中读取一行并返回长度最多为length-1字节的字符串。 //echofgets($fp,20); //可以过滤HTML //echofgetss($fp,20); //echofread($fp,2); //fread()从handle指向的文件中读取最多length个字节数 //echofread($fp,30); //fpassthru--输出文件指针处的所有剩余数据 //fpassthru本身还包含了向浏览器输出的功能,所以不需要echo echofpassthru($fp); fclose($fp); ?>
Demo9.php
<?php //file--把整个文件读入一个数组中 //file是按照每行来分组存放在一个数组中 //print_r(file('file.txt')); //而这个打印出的是文件中的第二行。 //$array_file=file('file.txt'); //echo$array_file[4]; //readfile--输出一个文件 //readfile是将整个文件读出来,readfile本身能够直接输入浏览器,所以不需要echo //返回值是文件字节的总长度 //echoreadfile('file.txt'); //file_get_contents--将整个文件读入一个字符串 //file_get_contents可以读入数据到缓冲区,然后通过echo来打印 echofile_get_contents('file.txt'); ?>
Demo10.php
<?php //现在要读出文件 $fp=fopen('file.txt','r'); //feof--测试文件指针是否到了文件结束的位置 while(!feof($fp)){ echofgetc($fp); } fclose($fp); ?>
Demo11.php
<?php //比如读取一个文件的时候,你必须保证这个文件一定要存在,才可以操作 //否则就报错,不让执行 //这个时候就有必须做一个检测 //file_exists--检查文件或目录是否存在 if(file_exists('file.txt')){ echo'执行各种各样的文本读写操作!'; }else{ echo'此本文不存在,请管理员在后台重新生成一下。'; } ?>
Demo12.php
<?php //文本大小,字节 //echofilesize('file.txt'); //删除一个文件 //unlink('a.txt'); //rewind--倒回文件指针的位置 //ftell--返回文件指针读/写的位置 //rewind--倒回文件指针的位置 //a表示可以追加,b表示二进制,这样可移植性好 //w $fp=fopen('file.txt','ab'); //echofgetc($fp); //echofgetc($fp); //echofgetc($fp); //echofgetc($fp); //rewind($fp); //echoftell($fp); //fseek($fp,20); //echoftell($fp); //echofgetc($fp); //echofgetc($fp); flock($fp,LOCK_EX);//锁定 fwrite($fp,'Thisislock!'); flock($fp,LOCK_UN);//解锁 fclose($fp); ?>
Demo13.php
<?php ////打开一个目录 //@$dir=opendir('C:\AppServ\www\Basic6'); ////读出目录,使用一个循环来读出 ////readdir--从目录句柄中读取条目 ////字符串如果是布尔值,就是说,字符串不为空,那么就是真,为空就是假 //while(!!$file=readdir($dir)){ //echo$file.'<br/>'; //} ////关闭 //@closedir($dir); //print_r(scandir('C:\AppServ\www\Basic6')); //删除一个目录 ////绝对路径的删除目录 //rmdir('C:\AppServ\www\Basic6\delMe'); ////相对路径的删除目录 //rmdir('delMe'); //删除一个文件 //ssunlink('file2.txt'); //重命名,这里,目录和文件都能改 //rename('file.txt','file2.txt'); ?>
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php文件操作总结》、《PHP目录操作技巧汇总》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。