2016/04/22 ①文件概述 ② 文件操作
①文件概述
php里面文件包含 目录dir 和 文件file 两种
②文件操作
一,文件属性:
1,获取文件类型 filetype("./images");
2,判断是否是目录 is_dir("");
3,判断是否是文件 is_file("");
4,文件上次访问时间 fileatime("");
5,文件创建时间 filectime("");
6,文件修改时间 filemtime("");
7,文件大小 filesize("");
8,文件是否存在 file_exists("");
二,文件路径:
1,当前路径 ./
2,上级路径 ../
3,根路径 / php语言的根目录指的是当前操作系统磁盘
在网页里面的根目录指的是文档目录 既www目录
4,取服务器根路径 $_SERVER['DOCUMENT_ROOT'];
5,路径中获取文件名 echo basename("../Add.php",".php");
6,返回路径中的目录名 echo dirname("../Add.php");
7,返回根路径,可以将相对路径转为绝对路径
echo realpath("../Add.php");
将相对路径转换为网页里面可以使用的绝对路径,封装
$filename="./Add.php";
$filename=realpath($filename);
$filename=str_replace("\\","/",$filename);
echo $filename;
显示:
原来:D:\wamp\www\0422\Add.php
替换后:D:/wamp/www/0422/Add.php
echo $_SERVER['DOCUMENT_ROOT'];
显示:
D:/wamp/www/
$filename=str_replace($_SERVER['DOCUMENT_ROOT'],"/",$filename);
echo $filename;
显示效果:
/0422/Add.php
8,返回数组 pathinfo("路径"); 包含目录名 文件全名 扩展名 文件名
9,返回规范化的绝对路径 realpath("路径");
三,目录操作
遍历目录
1,返回该目录下所有.php文件数组 glob("./fenye/*.php");
2, 获取文件夹下所有的文件 print_r(glob("./*"));
3, 打开文件资源 $dir=opendir("路径");
4,
echo readdir($dir)."<br>"; //一条语句 执行一条 读取第一条 .
echo readdir($dir)."<br>"; //一条语句 执行一条 读取第二条 ..
echo readdir($dir)."<br>";// 一条语句 执行一条 真正读取从第三条开始
while ($filename=readdir($dir)){
echo $filename."<br>";
}
closedir($dir); //关闭目录资源 有开 就必须有关
5,rewinddir($dir); //指针复位 从第一条开始再 遍历输出
创建目录: mkdir("aa");
删除目录: rmdir("aa"); 目录必须为空才可以删除
移动目录文件: rename("路径","路径"); 例子: rename("./22","../aa"); //移动文件夹
四,文件操作
1,文件整体操作
创建文件:touch("")
复制文件:copy("源","目标")
删除文件:unlink("")
file_get_contents("aa.txt") 读取文件内容 (本地,远程)
file_put_contents("aa.txt","hello"); 写入文件内容(覆盖)
读取文件并输出:readfile("")
将文件中每行数据放到数组 $attr=file("aa.txt")
2,文件内容操作
打开文件资源
① $fp=fopen("文件名","模式 r w")
② r只读 r+读写 w写 覆盖原来 w+ 读写
a写入文件末尾 a+读写 x创建并以写入打开
x+ 创建并以读写打开 加一个b代表可操作二进制文件(建议加)
关闭文件资源:fclose($fp)
写入内容: fwrite($fp,"aaaaa")
获取文件内容: fgetc($fp) 一个字符一个字符读
如果文件出错或到末尾返回true feof($fp);
一次读一行: fgets($fp)
读多长 : fread($fp,10) //10是字符长度
代码测试:
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 </head> 7 <body> 8 <?php 9 //php的文件包含文件和文件夹(目录) 10 //关于文件类型 11 //echo filetype("mydbda.php"); 12 //判断文件类型,返回file或者dir 13 //echo is_dir("mydbda.php"); 14 //判断是否是目录 15 //echo is_file("mydbda.php"); 16 //判断是否是文件 返回1 或 17 18 19 20 //关于文件属性 21 // echo fileatime("mydbda.php"); 22 // echo date("Y-m-d",fileatime("mydbda.php")); 23 //文件上次访问时间 24 //echo date("Y-m-d",filectime("mydbda.php")); 25 //文件的创建时间 26 //echo date("Y-m-d",filemtime("mydbda.php")); 27 //文件修改时间 28 //echo filesize("./mydbda.php"); 29 //获取文件大小 30 31 //echo file_exists("./mydbda.php"); 32 //判断文件是否存在 33 34 35 //文件路径 36 //当前路径 ./ 或者什么都不写 37 //上级目录 ../ 38 //下级目录 目录名/ 39 //根目录 / 40 // 41 // php语言中的根目录指的是当前操作系统磁盘, 42 // 在网页里面的根目录指的是文档目录 既www目录 43 44 //echo file_exists("./mydbda.php"); 45 // /代表磁盘 46 // 47 //echo $_SERVER['DOCUMENT_ROOT']; 48 //获取服务器的根路径 49 50 //echo basename("../mydbda.php",".php");//从路径中获取文件名去掉后缀 51 52 //echo dirname("/mydbda.php"); 53 //返回路径中的目录 54 55 //echo realpath("../mydbda.php"); 56 //返回根路径,可以将相对路径转为绝对路径 57 58 //将相对路径转换为网页里面可以使用的绝对路径 59 //$filename="./mydbda.php"; 60 //$filename=realpath($filename); 61 //D:/wamp/www/0422/mydbda.php 62 63 //$filename=str_replace("\\","/", $filename); 64 //echo $filename; 65 66 //$filename=str_replace($_SERVER['DOCUMENT_ROOT'], "/", $filename) ; 67 68 69 //print_r(pathinfo("./Add.php")); 70 // 71 // 72 //目录的操作 73 //print_r(glob("./*")); 74 //glob 获取文件夹下所有的文件 75 76 // var_dump(glob("./code/*.php")); 77 //在*后加类型.php 筛选出php文件 78 // 79 80 // $dir=opendir("./code");//打开文件资源 81 82 // echo readdir($dir)."<br>";//一次执行一条 . 83 // echo readdir($dir)."<br>";// .. 84 // echo readdir($dir)."<br>";// 真正读文件从第三条开始 85 86 // while ($filename= readdir($dir)) { 87 // echo $filename."<br>"; 88 // } 89 90 // closedir($dir);//关闭目录资源 91 92 93 // rewinddir($dir); //指针复位 ? 94 95 96 // mkdir("./22"); //创建目录(创建文件夹) 97 98 // rmdir("./22");//删除空文件夹 如果有文件夹中有内容 则不能删 99 100 101 // rename("./22", "../aa");//移动文件夹 102 103 // //文件操作 104 105 // //文件的整体 106 // touch("./aa.txt");// 创建文件 107 108 // copy("./aa.txt","../aa.txt");//复制文件 109 110 // unlink("./aa.txt");//删除文件 111 112 113 114 // file_get_contents("aa.txt");//获取文件内容 115 116 // file_get_contents("http://www.baidu.com"); 117 // //获取远程内容 获取数据 正则表达式 提取 118 119 // file_put_contents("./aa.txt",file_get_contents("http://www.baidu.com") ); //在文件里面写入内容 120 121 // readfile("../aa.txt"); //读取文件内容并输出 不用echo 122 123 // var_dump(file("./aa.txt"));//将文件中内容按照 每行一个元素方式返回数组 124 125 //打开文件资源 126 $f=fopen("./aaa.txt","rb"); 127 128 129 while (!feof($f)) {//如果文件读到末尾返回true 130 echo fread($f,1); 131 // echo fgetc($f); //读取文件内容一次读一个字符 132 } 133 134 135 //echo fgets($f); 136 //写入内容 每次读一行 137 //echo fread($f,2); 138 // 139 //fwrite($f, "0000"); 140 //关闭文件资源 141 fclose($f); 142 ?> 143 <!-- <img src="/0422/aa.jpg"> --> 144 <!-- 代表www目录 --> 145 </body> 146 </html>