PHP开发文件系统实例讲解


Posted in PHP onOctober 09, 2006

PHP中有许多与文件系统有关的函数,这些函数不仅可以打开文件,还可以显示目录中的内容、移动文件和其他一些功能,许多人甚至用PHP开发基于互联网的文件资源管理器。 

下面的脚本样例可以显示一个目录清单,注释已经包含在代码中: 

<? /?把要读取的目录的全路径名存入一个名字为$dir_name的变量中。/
$dir_name = "/home/me/";
/? 创建一个句柄,其值是打开一个给定目录的结果?/
$dir = opendir($dir_name);
/? 建立一个文字块,用以放置列表元素(文件名字)?/
$file_list = "<ul>";
/? 使用一个while语句,读取已经打开的目录中的所有元素,如果文件的名字不是“.”或“..”,则显示列表中的名字/
while ($file_name = readdir($dir)) {
if (($file_name != ".") &&&& ($file_name != "..")) {
$file_list .= "<li>$file_name";
}
}
$file_list .= "</ul>";
/?关闭打开的目录,结束PHP模块?/
closedir($dir);
?>
<!-- Start your HTML -->
<HTML>
<HEAD>
<TITLE>Directory Listing</TITLE>
</HEAD>
<BODY>
<!-- Use PHP to print the name of the directory you read -->
<P>Files in: <? echo "$dir_name"; ?></p>
<!-- Use PHP to print the directory listing -->
<? echo "$file_list"; ?>
</BODY>
</HTML> 

好了,我们已经得到了一个目录清单。需要注意的是,要读取一个文件(稍后我们将进行讲解)或目录的内容,PHP运行的系统上的用户必须至少有读取文件的权限。 

下面是一个如何拷贝文件的例子: 

<? /?把你要拷贝的源文件的全路径赋给一个名字为$original的变量中,把拷贝的文件的全路径赋予一个名字为$copied的变量中?/
$original = "/home/me/mydatabasedump";
$copied = "/archive/mydatabasedumo_1010";
/? 使用copy()函数拷贝源文件,如果拷贝没有完成则会显示一个错误信息?/
@copy($original, $copied) or die("Couldn't copy file.");
?> 

这个例子是一个文件备份系统的原型。在这段脚本运行时,它把文件拷贝到一个不同的位置进行保存。稍微修改一下守护程序,就可以在一天中你指定的时刻执行它,而无需用户的干预。 

PHP 相关文章推荐
PHP运行SVN命令显示某用户的文件更新记录的代码
Jan 03 PHP
windwos下使用php连接oracle数据库的过程分享
May 26 PHP
php中文繁体和简体相互转换的方法
Mar 21 PHP
PHP加密解密函数详解
Oct 28 PHP
基于Swoole实现PHP与websocket聊天室
Aug 03 PHP
php简单实现多维数组排序的方法
Sep 30 PHP
PHP读取文本文件并逐行输出该行使用最多的字符与对应次数的方法
Nov 25 PHP
DWZ+ThinkPHP开发时遇到的问题分析
Dec 12 PHP
PHP十六进制颜色随机生成器功能示例
Jul 24 PHP
php实现表单提交上传文件功能
May 28 PHP
Thinkphp5框架中引入Markdown编辑器操作示例
Jun 03 PHP
PHP7移除的扩展和SAPI
Mar 09 PHP
PHP动态图像的创建
Oct 09 #PHP
两种php调用Java对象的方法
Oct 09 #PHP
提升PHP执行速度全攻略(上)
Oct 09 #PHP
PHP的一个完整SMTP类(解决邮件服务器需要验证时的问题)
Oct 09 #PHP
PHP5.0正式发布 不完全兼容PHP4 新增多项功能
Oct 09 #PHP
动态网站web开发 PHP、ASP还是ASP.NET
Oct 09 #PHP
WINDOWS服务器安装多套PHP的另类解决方案
Oct 09 #PHP
You might like
用PHP读注册表
2006/10/09 PHP
PHP简单系统数据添加以及数据删除模块源文件下载
2008/06/07 PHP
php foreach正序倒序输出示例代码
2014/07/01 PHP
php四种定界符详解
2017/02/16 PHP
DOM 脚本编程中的兄弟节点
2009/10/31 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(三)情景对话中仿打字机输出文字
2013/01/23 Javascript
javascript上传图片前预览图片兼容大多数浏览器
2013/10/25 Javascript
Jquery遍历checkbox获取选中项value值的方法
2014/02/13 Javascript
js中settimeout方法加参数
2014/02/28 Javascript
javascript 获取元素样式必杀技
2014/05/04 Javascript
jQuery之Deferred对象详解
2014/09/04 Javascript
jQuery实现Tab选项卡切换效果简单演示
2015/11/23 Javascript
jquery判断checkbox是否选中及改变checkbox状态的实现方法
2016/05/26 Javascript
jquery仿京东侧边栏导航效果
2017/03/02 Javascript
在vscode中统一vue编码风格的方法
2018/02/22 Javascript
使用vuex缓存数据并优化自己的vuex-cache
2018/05/30 Javascript
用Node编写RESTful API接口的示例代码
2018/07/04 Javascript
微信小程序的mpvue框架快速上手指南
2019/05/15 Javascript
vue下canvas裁剪图片实例讲解
2020/04/16 Javascript
Python爬虫爬取美剧网站的实现代码
2016/09/03 Python
Windows安装Python、pip、easy_install的方法
2017/03/05 Python
解决Mac安装scrapy失败的问题
2018/06/13 Python
Python元组知识点总结
2019/02/18 Python
Django+Xadmin构建项目的方法步骤
2019/03/06 Python
python之生产者消费者模型实现详解
2019/07/27 Python
Python散点图与折线图绘制过程解析
2019/11/30 Python
Python实现多线程下载脚本的示例代码
2020/04/03 Python
Python爬虫代理池搭建的方法步骤
2020/09/28 Python
Python自动化测试基础必备知识点总结
2021/02/07 Python
全世界最美丽的四星和五星级酒店预订:Prestigia.com
2017/11/15 全球购物
Saucony澳大利亚官网:美国跑鞋品牌,运动鞋中的劳斯莱斯
2018/05/05 全球购物
职业技术学校毕业生推荐信
2013/12/03 职场文书
四年级下册教学反思
2014/02/01 职场文书
电大会计学自我鉴定
2014/02/06 职场文书
教师节联欢会主持词
2015/07/04 职场文书
Minikube搭建Kubernetes集群
2022/03/31 Servers