用PHP实现维护文件代码


Posted in PHP onJune 14, 2007

PHP有很多与文件系统相关的函数,不仅可以帮助你打开文件,还可以显示目录内容、移动文件等。很多人甚至使用PHP写出了基于Web的文件管理器。

首先需要提醒一些关于文件路径的东西:在Windows你可以在文件路径中使用斜线“/”或反斜线“\”,而其他操作系统仅使用”/”。出于兼容性考虑,以下实例使用“/”的表示方法:

下面的简单脚本显示了一个基本的目录列表。注释在代码中并解释了每一步:

<? /* 在变量 $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运行平台必须至少对目录或文件有read权限。

以下例子为如何复制文件:

<? /* 将需要复制的文件路径放入变量$original,复制的目标路径放入变量$copied */

$original = "/home/me/mydatabasedump";

$copied = "/archive/mydatabasedumo_1010"; 

/* 使用函数copy() 复制源文件至目的地,或以输出错误信息结束*/

@copy($original, $copied) or die("Couldn't copy file."); 

?> 

示例脚本是备份系统的第一步。当脚本运行时,出于安全考虑它先将数据库复制到不同地点。通过对crontab的修改,你可以在选定时间执行此文件而无需用户介入。

假设系统上已有Lynx,你可以创建crontab入口以运行Lynx并访问文件。访问文件将运行脚本并创建复制文件。以下例子将在早晨5点运行脚本,然后关闭Lynx:

0 5 * * * [username] lynx -dump http://localhost/copyfile.php 1>/dev/null 2>&1 

如果你运行的是PHP的CGI版本,你可以跳过Lynx部分并参考二进制文件:

0 5 * * * [username] php /path/to/copyfile.php 1>/dev/null 2>&1 

PHP 相关文章推荐
十天学会php之第四天
Oct 09 PHP
php 三维饼图的实现代码
Sep 28 PHP
实例介绍PHP的Reflection反射机制
Aug 05 PHP
thinkphp文件处理类Dir.class.php的用法分析
Dec 08 PHP
[原创]ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法
Oct 10 PHP
基于laravel制作APP接口(API)
Mar 15 PHP
PHP基于DOM创建xml文档的方法示例
Feb 08 PHP
phpMyAdmin无法登陆的解决方法
Apr 27 PHP
PHP静态延迟绑定和普通静态效率的对比
Oct 20 PHP
Laravel框架使用Seeder实现自动填充数据功能
Jun 13 PHP
PHP中创建和编辑Excel表格的方法
Sep 13 PHP
phpstudy隐藏index.php的方法
Sep 21 PHP
用PHP实现的随机广告显示代码
Jun 14 #PHP
PHP生成月历代码
Jun 14 #PHP
用PHP实现图象锐化代码
Jun 14 #PHP
PHP静态新闻列表自动生成代码
Jun 14 #PHP
discuz安全提问算法
Jun 06 #PHP
PHP5.2下chunk_split()函数整数溢出漏洞 分析
Jun 06 #PHP
phpMyAdmin下载、安装和使用入门教程
May 31 #PHP
You might like
set_include_path和get_include_path使用及注意事项
2013/02/02 PHP
Nginx下配置codeigniter框架方法
2015/04/07 PHP
PHP explode()函数用法讲解
2019/02/15 PHP
Add a Picture to a Microsoft Word Document
2007/06/15 Javascript
input 高级限制级用法
2009/03/26 Javascript
jquery 双色表格实现代码
2009/12/08 Javascript
juqery 学习之四 筛选查找
2010/11/30 Javascript
推荐11款jQuery开发的复选框和单选框美化插件
2011/08/02 Javascript
疯狂Jquery第一天(Jquery学习笔记)
2012/05/11 Javascript
js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码
2012/12/17 Javascript
angularJS提交表单(form)
2015/02/09 Javascript
jquery实现根据浏览器窗口大小自动缩放图片的方法
2015/07/17 Javascript
js实现图片无缝滚动
2015/12/23 Javascript
Javascript中apply、call、bind的巧妙使用
2016/08/18 Javascript
jQuery点击导航栏选中更换样式的实现代码
2017/01/23 Javascript
angularjs+bootstrap菜单的使用示例代码
2017/03/07 Javascript
js实现随机数字字母验证码
2017/06/19 Javascript
详解使用nvm安装node.js
2017/07/18 Javascript
使用Vue开发一个实时性时间转换指令
2018/01/17 Javascript
Vue分页效果与购物车功能
2019/12/13 Javascript
JavaScript实现图片合成下载的示例
2020/11/19 Javascript
socket + select 完成伪并发操作的实例
2017/08/15 Python
python 遍历列表提取下标和值的实例
2018/12/25 Python
matlab灰度图像调整及imadjust函数的用法详解
2020/02/27 Python
Python如何省略括号方法详解
2020/03/21 Python
python画环形图的方法
2020/03/25 Python
Tensorflow全局设置可见GPU编号操作
2020/06/30 Python
h5使用canvas画布实现手势解锁
2019/01/04 HTML / CSS
中东奢侈品市场:Coveti
2019/05/12 全球购物
硕士研究生个人求职信
2013/12/04 职场文书
高中语文教学反思
2014/01/16 职场文书
家长学校实施方案
2014/03/15 职场文书
小学绿色学校申报材料
2014/08/23 职场文书
恋恋笔记本观后感
2015/06/16 职场文书
校园开放日新闻稿
2015/07/17 职场文书
中考百日冲刺决心书
2015/09/22 职场文书