免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1394 | 回复: 1
打印 上一主题 下一主题

PHP学习笔记之目录与文件操作 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-03-25 10:47 |只看该作者 |倒序浏览
转:wustrive_2008


PHP学习笔记之目录与文件操作





获取目录路径:dirname($path);
  1. <?php

  2.     $path='D:\AppServ\www\Basic2\Demo4.php';
  3.     echo 'path:'.basename($path);  //解析目录路径,输出:path:Demo4.php
  4.     echo '<br />';
  5.     echo 'path:'.dirname($path);     //获取目录路径,输出:path:D:\AppServ\www\Basic2
  6.     echo '<br />';
  7.     $array_path=pathinfo($path);    //输出:Array ( [dirname] => D:\AppServ\www\Basic2 [basename] => Demo4.php [extension] => php [filename] => Demo4 )
  8.     print_r($array_path);
  9.     echo '<br />';
  10.     $path='../Basic2/Demo3.php';
  11.     echo realpath($path);       //输出:D:\AppServ\www\Basic2\Demo3.php
  12.    

  13. ?>
复制代码
获取磁盘、文件大小:
  1. <?php

  2.     $file='D:\AppServ\www\Basic2\Demo5.php';
  3.     echo round(filesize($file)/1024,2).'KB';  //输出文件大小
  4.     echo '<br />';
  5.     echo round(disk_free_space('C:')/1024/1024,2).'MB';  //获取磁盘可用空间大小

  6. ?>

  7. 目录操作:

  8. <?php
  9.     //设置本地时区
  10.      date_default_timezone_set('Asia/shanghai');
  11.     echo date('Y-m-d H:i:s');
  12.     //目录操作
  13.     $dir=opendir('D:\AppServ\www');//打开一个目录流
  14.     while (!!$file=readdir($dir)){
  15.         echo $file.'<br />';
  16.     }
  17.     //scandir():将目录读入数组
  18.     $a=scandir('D:\AppServ');
  19.     print_r($a);
  20.     //删除目录
  21.     rmdir('G:\mydir');
  22.     //重命名文件
  23.     rename(myfile.txt, youfile.txt);
  24.     closedir($dir); //关闭目录

  25. ?>
复制代码
文件操作:

写数据:

  1. <?php
  2.     //如果myfile.txt不存在,则尝试创建它,如果存在则清除里面的内容,函数返回一个资源句柄
  3.     $fp=fopen('myfile.txt', 'w');
  4.     //写入数据:第一个参数是打开过的要写入的资源,第二个参数是写入的数据,第三个参数是写入最大字符数(可选)
  5.     fwrite($fp, 'welcome to php!haha',10);
  6.     //关闭资源句柄
  7.     fclose($fp);
  8.     //file_put_contents函数不需要资源句柄,直接指定文件写入数据
  9.     file_put_contents('myfile2.txt', 'this is my first php');

  10. ?>

  11. 读取数据:


  12. <?php

  13.     $fp=fopen('myfile.txt','r');
  14.     //fgetc():取到文件的第一个字符,并且光标后移一位
  15.     echo fgetc($fp);
  16.     echo fgetc($fp);
  17.     //读出一行数据,从光标位置读到此行结束,有一个可选参数length,最多读取length-1个字符。
  18.     echo fgets($fp,8);
  19.     //fread():读取length个字符(第二个参数)
  20.     fread($fp, 5);
  21.     //fgetss():与fgets()的区别是过滤HTML标签
  22.     fgetss($fp);
  23.     echo '<br />';
  24.     //fpassthru():输出光标后所有数据,返回值为输出的字符总长度
  25.     fpassthru($fp);
  26.    
  27.     fclose($fp);

  28. ?>
复制代码
更常用的读取文件:
  1. <?php
  2.     //file():将文件数据读入到数组中,每行作为一个元素
  3.     $file_array=file('myfile.txt');
  4.     echo $file_array[2];
  5.     //读取所有数据到输出缓冲区,返回值为文件的总字节数
  6.     readfile('myfile.txt');
  7.     //读取文件到输出缓冲区
  8.     echo file_get_contents('myfile.txt');
  9. ?>

  10. 其他常用文件操作:

  11. <?php

  12.     $f=fopen('myfile.txt', 'r');
  13.     //feof():判断文件指针是否到达文件结尾,注意文件不能以追加的方式打开
  14.     //file_exists():判断文件是否存在
  15.     if(file_exists('myfile.txt')){
  16.         while (!feof($f)){
  17.             echo fgetc($f);
  18.         }
  19.         //修改文件光标位置
  20.         rewind($f);//回调指针至开始位置
  21.         echo ftell($f);//读取指针的位置
  22.         fseek($f, 5);//定位光标的位置
  23.         //文件锁定和解锁
  24.         flock($f, LOCK_EX);//锁定文件
  25.         flock($f, LOCK_UN);//解锁文件
  26.         fclose($f);
  27.     }
  28.     else{
  29.         echo '该文件不存在!';
  30.     }
  31. ?>
复制代码

论坛徽章:
0
2 [报告]
发表于 2011-03-25 13:39 |只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP