php实现文件管理与基础功能操作

文件的基本操作

先来看一下PHP文件基础操作,请看强大注释

rush:PHP;">

文件整体操作:

rush:PHP;"> PHP //touch("./11.txt"); //创建文件 //copy("11.txt","./ce/11.txt"); //复制文件 //unlink("./11.txt"); //删除文件 //echo file_get_contents("./ce/11.txt");本地 //echo file_get_contents("http://www.baidu.com");远程 //读取文件所有内容 //file_put_contents("./11.txt","Myshao"); //往文件里面存储内容 //readfile("./11.txt"); //读取并输出 //$arr = file("./shouye.PHP"); //var_dump($arr); //读取文件内所有内容,并扔到数组显示 //$ff = fopen("./11.txt","a"); //打开文件资源,详情见注1; //echo fgetc($ff); //读取一个字符 //echo fgets($ff); //读取一行字符 //echo fread($ff,2); //规定读多长 //fwrite($ff,"shao"); //写入内容

注1:打开和读取文件

PHP使用fopen()函数的方式,语法结构如下

Resource fopen (string $filename,string $mode) Filename是目标文件名,打开本地文件也可以打开远程文件,打开远程文件需要采用http://...形式,假如目标文件

ftp服务器上,则采用形式ftp://...。

参数mode是目标文件打开形式,参数$mode是可以接收的模式。

文件打开方式表:

目录资源的打开与关闭:但凡有开就有关,否则会影响到后面的删除等操作;

rush:PHP;"> PHP $fname = "./ce/gf"; $d = opendir($fname); //打开文件资源 while ($url = readdir($d)) { echo $fname."/".$url."
"; // 仅读取文件名,把路径拼上=完整路径 } var_dump(glob("./*")); closedir($d); //关资源

以上就是一些基础的语句了,来做点练习:

例:返回一个文件夹下的所有文件数量

如果想要计算出ajax目录下有多少的文件,可以用下面封装的方法shu()来遍历目录,可以计算出ce目录下其他的文件夹里面的文件的总和,

rush:PHP;">

看一下输出

再来一个!

例:删除文件

rush:PHP;"> PHP $fname = "./ce/gf"; $d = opendir($fname); //打开文件资源 while ($url = readdir($d)) { echo $fname."/".$url."
"; // 仅读取文件名,把路径拼上=完整路径 } var_dump(glob("./*")); closedir($d); //关资源 //删除文件夹(非空文件夹) function shan($url) { // 清空文件夹 $d = opendir($url); // 打开 while ($u = readdir($d))//$u现在是文件名 { // 排除... if($u!="." && $u!="..") { $fname = $url . "/" . $u; //完整带路径的文件名 if (is_file($fname))//如果是一个文件 { unlink($fname); } else //如果是一个文件夹 { shan($fname); } } } closedir($d); //关闭 rmdir($url); } shan("./122"); ?>

这样122目录里面所有的东西,不管是文件夹还是文件都会被删除

实现文件管理功能

1.先把查看文件功能做出来,让他把所有的文件文件夹啊显示出来;

rush:PHP;"> PHP //定义文件目录 $fname = "./ce"; //便利目录下的所有文件显示 $arr = glob($fname."/*"); foreach ($arr as $v) { //从完整路径中取文件名 $name = basename($v); echo "
{$name}
"; } ?>

图:

接下来给文件夹特殊显示一下把:

输出之前需要判断,判断是不是一个文件夹:

rush:PHP;"> //从完整路径中取文件名 $name = basename($v); if(is_dir($v)){ echo "
{$name}
"; } else { echo "
{$name}
"; }

如果是个文件夹,给他背景颜色改变一下就好啦

图:

2.给文件添加双击事件:

双击实现进入这个目录;

js代码

rush:PHP;">

处理页面

rush:PHP;"> PHP session_start(); $url = $_POST["url"]; $_SESSION["fname"] = $url;

这样就可以实现双击进入此文件夹:

3.返回上一级,找到上一级目录,写个div

rush:PHP;"> $pname = dirname($fname); echo "
返回上一级
";

图:

写双击事件:

rush:PHP;">

返回到文件目录后使其隐藏:

rush:PHP;"> //上一级的目录 $pname = dirname($fname); if(realpath($fname)=="F:\\QQPCMgr\\WWW\\wenjian") {} else { echo "
返回上一级
"; }

这样的话当我返回到wenjian目录的时候,使其隐藏:

4.删除功能

文件div里面加删除按钮:

rush:PHP;"> echo "
{$name}
";

来写按钮的点击事件:

js代码

rush:PHP;"> $(".sc").click(function(){ //确认删除提示 var av = confirm("确定要删除"); if(av){ var url = $(this).attr("url"); $.ajax({ url: "shan.PHP",data: {url: url},type: "POST",dataType: "TEXT",success: function (data) { window.location.href = "wenwen.PHP"; }

});
}
})

删除的处理页面

rush:PHP;"> PHP $url = $_POST["url"]; unlink($url);

这样完成后,当我点击删除

再点击确定,即可删除

代码

管理查看页面

rush:PHP;"> 无<a href="https://www.jb51.cc/tag/biaoti/" target="_blank" class="keywords">标题</a>文档

处理:

rush:PHP;"> PHP session_start(); $url = $_POST["url"]; $_SESSION["fname"] = $url;

删除

rush:PHP;"> PHP $url = $_POST["url"]; unlink($url);

以上所述是小编给大家介绍的PHP实现文件管理与基础功能操作,希望对大家有所帮助。程序员遇到问题都会上(编程之家jb51.cc)查找问题解答方法!如果觉得站点还不错,随手转发给程序员朋友一下!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


服务器优化必备:深入了解PHP8底层开发原理
Golang的网络编程:如何快速构建高性能的网络应用?
Golang和其他编程语言的对比:为什么它的开发效率更高?
PHP8底层开发原理揭秘:如何利用新特性创建出色的Web应用
将字符重新排列以形成回文(如果可能)在C++中
掌握PHP8底层开发原理和新特性:创建高效可扩展的应用程序
服务器性能优化必学:掌握PHP8底层开发原理
PHP8新特性和底层开发原理详解:优化应用性能的终极指南
将 C/C++ 代码转换为汇编语言
深入研究PHP8底层开发原理:创建高效可扩展的应用程序
C++程序查找法向量和迹
PHP8底层开发原理实战指南:提升服务器效能
重排数组,使得当 i 为偶数时,arr[i] >= arr[j],当 i 为奇数时,arr[i] <= arr[j],其中 j < i,使用 C++ 语言实现
Golang的垃圾回收:为什么它可以减少开发人员的负担?
C++程序:将一个数组的所有元素复制到另一个数组中
Golang:构建智能系统的基石
为什么AI开发者应该关注Golang?
在C和C++中,逗号(comma)的用法是用来分隔表达式或语句
PHP8底层开发原理解析及新特性应用实例
利用PHP8底层开发原理解析新特性:如何构建出色的Web应用