用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 什么是PEAR?(第二篇)
Mar 19 PHP
在字符串指定位置插入一段字符串的php代码
Feb 16 PHP
zend Framework中的Layout(模块化得布局)详解
Jun 28 PHP
CodeIgniter框架提示Disallowed Key Characters的解决办法
Apr 21 PHP
PHP实现的简单三角形、矩形周长面积计算器分享
Nov 18 PHP
CentOS下PHP安装Oracle扩展
Feb 15 PHP
PHP实现获取中英文首字母
Jun 19 PHP
php中foreach结合curl实现多线程的方法分析
Sep 22 PHP
PHP面向对象自动加载机制原理与用法分析
Oct 14 PHP
PHP+Mysql无刷新问答评论系统(源码)
Dec 20 PHP
详解Yaf框架PHPUnit集成测试方法
Dec 27 PHP
php7 图形用户界面GUI 开发示例
Feb 22 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
怎样给PHP源代码加密?PHP二进制加密与解密的解决办法
2013/04/22 PHP
CodeIgniter错误mysql_connect(): No such file or directory解决方法
2014/09/06 PHP
ThinkPHP中html:list标签用法分析
2016/01/09 PHP
laravel异步监控定时调度器实例详解
2019/06/21 PHP
php解决约瑟夫环算法实例分析
2019/09/30 PHP
jQuery 浮动广告实现代码
2008/12/25 Javascript
使用js操作css实现js改变背景图片示例
2014/03/10 Javascript
jquery使用正则表达式验证email地址的方法
2015/01/22 Javascript
JS实现文字向下滚动完整实例
2015/02/06 Javascript
JS实现自适应高度表单文本框的方法
2015/02/25 Javascript
JQuery中Bind()事件用法分析
2015/05/05 Javascript
浅谈setTimeout 与 setInterval
2015/06/23 Javascript
JS事件添加和移出的兼容写法示例
2016/06/20 Javascript
JS实现图文并茂的tab选项卡效果示例【附demo源码下载】
2016/09/21 Javascript
Javascript中arguments对象的详解与使用方法
2016/10/04 Javascript
jQuery插件开发发送短信倒计时功能代码
2017/05/09 jQuery
Bootstrap fileinput文件上传预览插件使用详解
2017/05/16 Javascript
基于vue+ bootstrap实现图片上传图片展示功能
2017/05/17 Javascript
react native实现往服务器上传网络图片的实例
2017/08/07 Javascript
vue组件父子间通信详解(三)
2017/11/07 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
解决layer弹出层的内容页点击按钮跳转到新的页面问题
2019/09/14 Javascript
JS实现导航栏楼层特效
2020/01/01 Javascript
使用Python下的XSLT API进行web开发的简单教程
2015/04/15 Python
在CentOS上配置Nginx+Gunicorn+Python+Flask环境的教程
2016/06/07 Python
Python爬虫框架scrapy实现downloader_middleware设置proxy代理功能示例
2018/08/04 Python
python traceback捕获并打印异常的方法
2018/08/31 Python
基于python和flask实现http接口过程解析
2020/06/15 Python
Css3新特性应用之形状总结
2016/12/08 HTML / CSS
英国Office鞋店德国网站:在线购买鞋子、靴子和运动鞋
2018/12/19 全球购物
便利店投资创业计划书
2014/02/08 职场文书
学习雷锋精神心得体会范文
2014/03/12 职场文书
会计与出纳自荐书范文
2014/03/16 职场文书
职员竞岗演讲稿
2014/05/14 职场文书
工厂门卫岗位职责
2015/04/13 职场文书
交通事故赔偿起诉书
2015/05/20 职场文书