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入门
Oct 09 PHP
PHP中读写文件实现代码
Oct 20 PHP
PHPEXCEL 使用小记
Jan 06 PHP
php实现快速排序的三种方法分享
Mar 12 PHP
PHP中SESSION的注销与清除
Apr 16 PHP
ThinkPHP中html:list标签用法分析
Jan 09 PHP
thinkphp框架实现数据添加和显示功能
Jun 29 PHP
php将服务端的文件读出来显示在web页面实例
Oct 31 PHP
PHP isset()与empty()的使用区别详解
Feb 10 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
Jul 03 PHP
YII2框架中ActiveDataProvider与GridView的配合使用操作示例
Mar 18 PHP
php设计模式之享元模式分析【星际争霸游戏案例】
Mar 23 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中imagick函数的中文解释
2015/01/21 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
基于ThinkPHP实现的日历功能实例详解
2017/04/15 PHP
js获得地址栏?问号后参数的方法
2013/08/08 Javascript
探寻Javascript执行效率问题
2014/11/12 Javascript
js支持键盘控制的左右切换立体式图片轮播效果代码分享
2015/08/26 Javascript
AngularJS ng-repeat数组有重复值的解决方法
2016/10/23 Javascript
vue使用watch 观察路由变化,重新获取内容
2017/03/08 Javascript
史上最全JavaScript数组去重的十种方法(推荐)
2017/08/17 Javascript
通过jquery获取上传文件名称、类型和大小的实现代码
2018/04/19 jQuery
微信小程序文章详情页面实现代码
2018/09/10 Javascript
使用angularjs.foreach时return的问题解决
2018/09/30 Javascript
vue 中 beforeRouteEnter 死循环的问题
2019/04/23 Javascript
uni-app从安装到卸载的入门教程
2020/05/15 Javascript
Jquery如何使用animation动画效果改变背景色的代码
2020/07/20 jQuery
vue-列表下详情的展开与折叠案例
2020/07/28 Javascript
Python操作列表之List.insert()方法的使用
2015/05/20 Python
django rest framework使用django-filter用法
2020/07/15 Python
Python爬虫爬取糗事百科段子实例分享
2020/07/31 Python
Python eval函数原理及用法解析
2020/11/14 Python
会走动的图形html5时钟示例
2014/04/27 HTML / CSS
深入理解HTML的FormData对象
2016/05/17 HTML / CSS
国家地理在线商店:Shop National Geographic
2018/06/30 全球购物
英国领先的鞋类零售商:Shoe Zone
2018/12/13 全球购物
纬创Java面试题笔试题
2014/10/02 面试题
介绍一下Python中webbrowser的用法
2013/05/07 面试题
本科生职业生涯规划书范文
2014/01/21 职场文书
中餐厅主管的职责范文
2014/02/04 职场文书
趣味游戏活动方案
2014/02/07 职场文书
超越自我演讲稿
2014/05/21 职场文书
扬尘污染防治方案
2014/06/15 职场文书
2015年幼儿园教研活动总结
2015/03/25 职场文书
办公室年度工作总结2015
2015/05/21 职场文书
详解Go语言运用广度优先搜索走迷宫
2021/06/23 Python
在Python 中将类对象序列化为JSON
2022/04/06 Python
Spring Boot优化后启动速度快到飞起技巧示例
2022/07/23 Java/Android