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 相关文章推荐
ASP和PHP都是可以删除自身的
Apr 09 PHP
实用函数9
Nov 08 PHP
PHP禁止个别IP访问网站
Oct 30 PHP
PHP中Session引起的脚本阻塞问题解决办法
Apr 08 PHP
PHP制作百度词典查词采集器
Jan 29 PHP
laravel 5 实现模板主题功能(续)
Mar 02 PHP
浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)(日常整理)
Oct 26 PHP
基于PHP后台的Android新闻浏览客户端
May 23 PHP
yii2缓存Caching基本用法示例
Jul 18 PHP
PHP经典算法集锦【经典收藏】
Sep 14 PHP
php实现微信企业付款到个人零钱功能
Oct 09 PHP
PHP实用小技巧之调用录像的方法
Dec 05 PHP
用PHP读取IMAP邮件
Oct 09 #PHP
php+oracle 分页类
Oct 09 #PHP
使用无限生命期Session的方法
Oct 09 #PHP
图象函数中的中文显示
Oct 09 #PHP
使用php+xslt在windows平台上
Oct 09 #PHP
配置PHP使之能同时支持GIF和JPEG
Oct 09 #PHP
PHP输出控制功能在简繁体转换中的应用
Oct 09 #PHP
You might like
php 中文处理函数集合
2008/08/27 PHP
Zend 输出产生XML解析错误
2009/03/03 PHP
php中unlink()、mkdir()、rmdir()等方法的使用介绍
2012/12/21 PHP
在PHP上显示JFreechart画的统计图方法
2013/11/03 PHP
PHP版QQ互联OAuth示例代码分享
2015/07/05 PHP
用jQuery技术实现Tab页界面之二
2009/09/21 Javascript
Raphael带文本标签可拖动的图形实现代码
2013/02/20 Javascript
node.js中的console.error方法使用说明
2014/12/10 Javascript
JS表格组件神器bootstrap table详解(基础版)
2015/12/08 Javascript
如何让一个json文件显示在表格里【实现代码】
2016/05/09 Javascript
react+ant design实现Table的增、删、改的示例代码
2018/12/27 Javascript
JS简单数组排序操作示例【sort方法】
2019/05/17 Javascript
微信小程序class封装http代码实例
2019/08/24 Javascript
微信小程序服务器日期格式化问题
2020/01/07 Javascript
安装多版本Vue-CLI的实现方法
2020/03/24 Javascript
JavaScript实现H5接金币功能(实例代码)
2021/02/22 Javascript
[19:15]DK战队纪录片
2014/09/02 DOTA
[00:59]DOTA2英雄背景故事——上古巨神
2020/06/28 DOTA
[06:07]DOTA2-DPC中国联赛 正赛 Ehome vs VG 选手采访
2021/03/11 DOTA
python实现的各种排序算法代码
2013/03/04 Python
浅要分析Python程序与C程序的结合使用
2015/04/07 Python
Python矩阵常见运算操作实例总结
2017/09/29 Python
使用Python开发SQLite代理服务器的方法
2018/12/07 Python
HTML5 canvas标签实现刮刮卡效果
2015/04/24 HTML / CSS
车间班长岗位职责
2013/11/30 职场文书
记者岗位职责
2014/01/06 职场文书
幼儿园教师个人反思
2014/01/30 职场文书
大学生未来职业生涯规划书
2014/02/15 职场文书
畜牧兽医本科生的自我评价
2014/03/03 职场文书
领导干部保密承诺书
2014/08/30 职场文书
三潭印月的导游词
2015/02/12 职场文书
2015年党员个人自我评价
2015/03/03 职场文书
Javascript 解构赋值详情
2021/11/17 Javascript
什么是Python装饰器?如何定义和使用?
2022/04/11 Python
Android Studio实现带三角函数对数运算功能的高级计算器
2022/05/20 Java/Android
Python使用plt.boxplot()函数绘制箱图、常用方法以及含义详解
2022/08/14 Python