zoukankan      html  css  js  c++  java
  • php文件操作

    1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    2   <html xmlns="http://www.w3.org/1999/xhtml">
    3   <head>
    4   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    5  <title>无标题文档</title>
    6   </head>
    7  
    8  <body>
      1 <?php
      2 
      3 //php中的文件指的是文件和文件夹,不是单指文件。
      4 
      5 //1.判断文件(判断是文件还是文件夹)
      6 //var_dump(filetype("./aa.txt"));//找文件,输出结果为file,代表的是文件。
      7 
      8 //var_dump(filetype("./aa"));//找文件夹,输出的是dir,代表的是目录。
      9 
     10 //var_dump(is_file("./aa.txt"));//判断是不是文件,返回的是true
     11 
     12 //var_dump(is_file("./aa"));//返回的是flase
     13 
     14 //var_dump(is_dir("./aa.txt"));//判断是不是文件夹,返回的是flase
     15 
     16 //var_dump(is_dir("./aa"));//返回的是true
     17 
     18 //2.文件属性
     19 //echo date(fileatime("./aa.txt"));//获取文件上次访问时间,返回的是时间戳。
     20 
     21 //echo date("Y-m-d h:i:s",fileatime("./aa.txt"))//把时间戳转化为时间。
     22 
     23 //echo date("Y-m-d h:i:s",filectime("./aa.txt"));//获取文件创建时间
     24 
     25 //echo date("Y-m-d h:i:s",filemtime("./aa.txt"));//获取文件修改时间
     26 
     27 //echo filesize("aa.txt");//返回文件的大小,单位是字节b。
     28 
     29 //var_dump(file_exists("aa.txt"));//判断文件是否存在,存在返回true,不存在返回flase。
     30 
     31 //3.文件路径
     32 
     33 // ./代表当前路径
     34 
     35 // ../代表上级路径
     36 
     37 // /在页面指文档根,在php里面的根代表是磁盘目录,网页里面/也是代表根,是www目录。
     38 
     39 //echo $_SERVER['DOCUMENT_ROOT'];//返回D:/wamp/www/,取的是服务器的根。
     40 
     41 //echo basename("/wamp/www/index.php");//返回index.php,返回的是文件名。
     42 
     43 //echo basename("/wamp/www/index.php",".php");//返回index,返回的只是文件名。
     44 
     45 //echo dirname("/wamp/www/index.php");//返回/wamp/www,只是获取目录。
     46 
     47 //var_dump(pathinfo("/wamp/www/index.php"));//返回数组,里面是文件存在的目录、文件名、文件格式等信息。
     48 
     49 //echo realpath("./aa.txt");//返回D:wampwwwwenjiancaozuoaa.txt,把相对路径转化为绝对路径。
     50 
     51 //4.目录操作
     52 
     53 //mkdir("./bb");//创建目录
     54 
     55 //rmdir("bb");//删除目录,只能删除空文件夹。文件夹里有内容是不能删除的,会报错。
     56 
     57 //rename("./cc","./aa/cc");//移动文件夹,实际上是把文件重新命名位置。
     58 
     59 //rename("./cc","./aa/dd");//移动的同时可以更改文件名。
     60 
     61 //5.遍历目录**
     62 
     63 //var_dump(glob("./zufang/*"));//遍历租房文件夹下所有的文件,相当于未按里面的额搜索。
     64 
     65 //var_dump(glob("./zufang/*.php"));//遍历文件格式为php的文件
     66 
     67 /*$dir = opendir("./zufang");//打开目录资源,打开以后一定要记得关闭。
     68 
     69 //echo readdir();//返回.  .代表当前目录
     70 //echo readdir();//返回..  ..代表上级目录
     71 //echo readdir();//返回第一个文件
     72 //echo readdir();//返回第二个文件
     73 
     74 while($f = readdir($dir))//遍历出所有的文件,文件夹也可以读取。
     75 {
     76     echo $f;
     77 }
     78 
     79 closedir($dir);//关闭目录资源
     80 */
     81 
     82 //例题:给一个文件夹,读取文件夹里面文件的数量
     83 
     84 /*echo ShuLiang("./zufang");
     85 function ShuLiang($filename)
     86 {
     87     $sum = 0;
     88     $dir = opendir($filename);
     89     while($f = readdir($dir))
     90     {
     91         if($f=="." || $f=="..")//如果遍历出的是.或者..,什么也不执行.
     92         {
     93             
     94         }
     95         else
     96         {
     97             $lujing = $filename."/".$f;
     98             if(is_file($lujing))
     99             {
    100                 $sum++;
    101             }
    102             else
    103             {
    104                 $sum = $sum+ShuLiang($lujing);
    105             }
    106         }
    107     }
    108     closedir($dir);
    109     return $sum;
    110 }
    111 */
    112 
    113 //6.文件操作
    114 
    115 //(1)文件整体操作
    116 
    117 //touch("./cc.txt");//创建文件
    118 
    119 //copy("./cc.txt","./aa/cc.txt");//赋值文件,第一个参数是要复制的文件,第二个是把文件复制到哪里。
    120 
    121 //unlink("./cc.txt");//删除文件
    122 
    123 //echo file_get_contents("./aa.txt");//读取文件内容只能读取txt、html、php等,word、wxcle文档不能读取。
    124 
    125 //echo file_get_contents("http://www.baidu.com");//这个方法比较重要,可以从网上抓取数据,用正则表达式匹配。
    126 
    127 //file_put_contents("./aa.txt","hello");//往文件里写内容,写的内容会覆盖原来的内容。
    128 
    129 //file_put_contents("./ceshi.php","hello");//修改往网页里面的内容
    130 
    131 //readfile("http://www.baidu.com");//获取并且输出,前面没有写输出。 file_get_contents需要写输出echo。
    132 
    133 //var_dump(file("http://www.baidu.com"));//把网页的代码一行一行的显示出来。
    134 
    135 
    136 /*$f = fopen("./aa.txt","r");//第一个参数是打开的文件,第二个是打开的方式,方式具体可以查看php手册。
    137 
    138 //echo fgetc($f);//aa.txt的内容是hello。这里返回的是h
    139 //echo fgetc($f);//返回e
    140 //echo fgetc($f);//返回l
    141 //....fgetc()是一次读一个
    142 
    143 //echo fgets($f);//一次读一行
    144 
    145 echo fread($f,2);//读取的长度,这里是读取2个长度,返回he。
    146 
    147 fclose($f);//文件打开以后一定要关上,如果不关是不能进行别的操作的。*/
    148 
    149 
    150 /*$f = fopen("./aa.txt","a");//a方式是追加
    151 
    152 fwrite($f,"world");//把world写在hello后面
    153 
    154 fclose($f);
    155 */
    156 
    157 
    158 //给一个文件夹,删除该文件夹
    159 
    160 /*ShanChu("./zufang");
    161 
    162 function ShanChu($filename)
    163 {
    164     if(is_dir($filename))//判断是文件
    165     {
    166         $dir = opendir($filename);//打开文件夹
    167         
    168         while($f = readdir($dir))//遍历出文件夹里所有的内容
    169         {
    170             if($d=="." || $d=="..")//去掉.和..
    171             {
    172                 
    173             }
    174             else//操作不是.和..的内容
    175             {
    176                 $fname = $filename."/".$f;//找到遍历出的内容,拼出来的格式类似wamp/zufang
    177                 if(is_file($fname))//如果是文件
    178                 {
    179                     unlink($fname);
    180                 }
    181                 else//如果是文件夹
    182                 {
    183                     ShanChu($fname);//再调用ShanChu方法,删除的文件夹变了。
    184                 }
    185             }
    186         }
    187         closedir($dir);//关闭文件夹
    188         rmdir($filename);//把文件夹里的内容都删除以后,删除文件夹
    189     }
    190     else//如果是空文件夹
    191     {
    192         unlink($filename);//删除该空文件夹
    193     }
    194 }
    195 */
    196 
    197 ?>
    
    

    </body>

    </html>

     
  • 相关阅读:
    与非
    抄卡组
    数据结构》关于差分约束的两三事(BZOJ2330)
    刷题向》图论》BZOJ1179 关于tarjan和SPFA的15秒(normal)
    图论算法》关于tarjan算法两三事
    图论算法》关于SPFA和Dijkstra算法的两三事
    刷题向》DP》值得一做》关于对DP问题的充分考虑(normal)
    数据结构》关于线段树两三事(新手向)(工具向)
    图论算法》关于匈牙利算法的两三事
    关于羊和车的问题
  • 原文地址:https://www.cnblogs.com/axj1993/p/6592676.html
Copyright © 2011-2022 走看看