php 文件操作

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<?php
//文件操作
//1.只能操作服务器的文件
//2.文件包含目录和文件

//判断文件类型
//var_dump(filetype("./img")); //返回文件的类型:目录dir 文件file
//var_dump(is_dir("./img")); //判断路径是不是目录  正确返回true 错误返回false  
//var_dump(is_file("./add.php")); //判断路径是不是文件  正确返回true 错误返回false  

//文件属性
//echo date("Y-m-d H:i:s",fileatime("./add.php")); //上次访问时间
//echo date("Y-m-d H:i:s",filectime("./add.php")); //创建时间
//echo date("Y-m-d H:i:s",filemtime("./add.php")); //修改时间
//echo filesize("./add.php"); //文件大小,字节为单位
//var_dump(file_exists("./add.php")); //判断文件是否存在

//文件路径
//当前路径:./  上级目录:../  下级目录:目录/  根路径:/
//如果是php里面的根(/)路径代表:磁盘的根
//如果是在网页里面的根(/)路径代表:服务器的根(www目录)
//echo $_SERVER['DOCUMENT_ROOT']; //取服务器的根路径
//echo basename("./add.php"); //从路径中获取带后缀的文件名
//echo basename("./add.php",".php"); //从路径中获取不带后缀的文件名
//echo dirname("./img/aa.php"); //取路径中除去文件名的目录
//var_dump(pathinfo("./img/aa.php")); //返回目录信息,格式为数组
//echo realpath("./img/aa.php"); //将相对路径转化为绝对路径

//操作目录
//var_dump(glob("./img/*")); //获取目录下所有的文件*  某个后缀的*.php

/*$attr = glob("./img/*");
for($i=0;$i<count($attr);$i++)
{
    echo $attr[$i]."<br>";
}*/

//使用全局变量计算文件和文件夹的数量

/*//定义两个变量
$filenum=0;
$dirnum=0;
    
num("./img");

echo "文件的数量为:".$filenum."<br>";
echo "文件夹的数量为:".$dirnum;

function num($url)
{
    global $filenum;    //使用全局变量
    global $dirnum;        //使用全局变量
    
    //判断给的路径是不是文件    
    if(is_file($url))
    {
        $filenum=1;
        return $filenum;
        exit;    
    }
    
    //获取目录下所有的子文件
    $attr=glob($url."/*");
    
    //遍历所有子文件
    foreach($attr as $v)
    {
        if(is_file($v))
        {
            $filenum++;    
        }
        else
        {
            $dirnum++;
            num($v);    
        }    
    }
}*/

//只计算文件的数量

/*echo num("./img");

function num($url)
{
    $filenum=0;
    
    //判断给的路径是不是文件    
    if(is_file($url))
    {
        $filenum=1;
        return $filenum;
        exit;    
    }
    
    //获取目录下所有的子文件
    $attr=glob($url."/*");
    
    //遍历所有子文件
    foreach($attr as $v)
    {
        if(is_file($v))
        {
            $filenum++;    
        }
        else
        {
            $filenum=$filenum+num($v);    
        }    
    }
    
    return $filenum;
}*/

//计算文件夹大小

/*echo dirsize("./img");
function dirsize($url)
{
    //定义变量存储文件大小
    $size = 0;
    
    //判断给的路径是不是文件
    if(is_file($url))
    {
        return filesize($url);
        exit;
    }
    
    //如果是目录,取目录下的所有文件
    $attr = glob($url."/*");
    
    //遍历子文件
    foreach($attr as $v)
    {
        if(is_file($v))
        {
            $size = $size + filesize($v);
        }
        else
        {
            $size = $size + dirsize($v);
        }
    }
    
    return $size;
}*/

//使用目录资源遍历
$dir = opendir("./img"); //打开目录资源

//echo readdir($dir); //读取目录下的文件,执行一次读一个

while($wj = readdir($dir))
{
    echo $wj."<br>";
}

closedir($dir); //关闭目录资源

//rewindder($dir);//将指针重置

//使用readdir()读取的第一个和第二个内容
//第一个是. 代表当前目录
//第二个是.. 代表上级目录
//在使用目录资源遍历文件夹的时候要注意将前两个排除


?>
</body>
</html>
View Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<?php
//目录操作
//1.创建目录(文件夹)
//mkdir("./test");
//2.删除目录(文件夹)只能删除空的文件夹
//rmdir("./test");
//3.移动目录(文件夹)  相当于剪切 内部内容也会跟着移动
//rename("./test","../test11"); 

//文件操作
//touch("./test.txt");//创建文件
//copy("./test.txt","../test.txt"); //复制文件
//unlink("./test.docx"); //删除文件

//echo file_get_contents("./test.txt"); //获取文件内容:txt类型和页面内容
//echo file_get_contents("http://www.baidu.com"); //远程获取内容
//file_put_contents("./test.txt","hello"); //向文件写入内容并清空原本的内容
//readfile("./test.txt"); //获取文件内容并且直接输出
//var_dump(file("./test.txt")); //读取文件内容,返回数组,数组的每个元素对应的是一行

//对文件内容进行操作
//1.打开文件资源
//$fp = fopen("./test.txt","a");

//操作文件
//echo fgetc($fp); //每次读一个字符
/*while(!feof($fp)) //判断文件是否读到末尾
{
    echo fgetc($fp);
}*/
//echo fgets($fp); //每次读一行
//echo fgets($fp);

//echo fread($fp,10); //读取特定长度
//$str = "ni hao dhakhdak 
 akdhka";
//$str = iconv("utf-8","gb2312",$str);

//fwrite($fp,$str);

//2.关闭文件资源
//fclose($fp);

//world文档  excel文档  从网上找

//作业:文件管理器
//随便找个目录(管理该目录下的文件)
//显示该目录下所有文件
//文件的最上面有返回上级按钮可以返回上级文件夹





?>
</body>
</html>
View Code

重点

//var_dump(filetype("../0529")); //返回文件的类型:目录dir 文件file
//var_dump(is_dir("../11.php")); //判断路径是不是目录
//var_dump(is_file("../11.php")); //判断路径是不是文件

//echo filesize("../11.php"); //文件大小,字节为单位
//var_dump(file_exists("../12.php")); //判断文件是否存在

//当前路径:./  上级目录:../  下级目录:目录/  根路径:/
//如果是php里面的根(/)路径代表:磁盘的根
//如果是在网页里面的根(/)路径代表:服务器的根(www目录)

//var_dump(pathinfo("../0529/aa.php")); //返回目录信息,格式为数组
//echo realpath("../0529/aa.php"); //将相对路径转化为绝对路径

目录资源

//1.创建目录(文件夹)
//mkdir("./test");
//2.删除目录(文件夹)只能删除空的文件夹
//rmdir("./test");
//3.移动目录(文件夹)
//rename("./test","../test11"); 

//touch("./test.txt");//创建文件
//copy("./test.txt","../test.txt"); //复制文件
//unlink("./test.docx"); //删除文件

//echo file_get_contents("./test.txt"); //获取文件内容:txt 页面

文件资源
View Code
原文地址:https://www.cnblogs.com/bilibiliganbei/p/5635838.html