用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代码把全角数字转为半角数字
Dec 10 PHP
允许phpmyadmin空密码登录的配置方法
May 29 PHP
php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位
Oct 31 PHP
PHP number_format() 函数定义和用法
Jun 01 PHP
一个PHP并发访问实例代码
Sep 06 PHP
php数组的概述及分类与声明代码演示
Feb 26 PHP
PHP内核探索:变量存储与类型使用说明
Jan 30 PHP
php简单截取字符串代码示例
Oct 19 PHP
PHP chr()函数讲解
Feb 11 PHP
浅谈PHP进程管理
Mar 08 PHP
TP5框架实现签到功能的方法分析
Apr 05 PHP
详解Laravel制作API接口
May 31 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
笑谈配置,使用Smarty技术
2007/01/04 PHP
Laravel Reponse响应客户端示例详解
2020/09/03 PHP
Javascript Cookie读写删除操作的函数
2010/03/02 Javascript
window.onload和$(function(){})的区别介绍
2013/10/30 Javascript
JavaScript function 的 length 属性使用介绍
2014/09/15 Javascript
javascript+html5实现绘制圆环的方法
2015/07/28 Javascript
基于Bootstrap实现Material Design风格表单插件 附源码下载
2016/04/18 Javascript
深入理解Angular2 模板语法
2016/08/07 Javascript
jQuery实现的简单排序功能示例【冒泡排序】
2017/01/13 Javascript
使用 Vue.js 仿百度搜索框的实例代码
2017/05/09 Javascript
详解windows下vue-cli及webpack 构建网站(三)使用组件
2017/06/17 Javascript
AngularJS表单验证功能
2017/10/19 Javascript
JS中使用textPath实现线条上的文字
2017/12/25 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
ES6知识点整理之函数对象参数默认值及其解构应用示例
2019/04/17 Javascript
layer弹出层自适应高度,垂直水平居中的实现
2019/09/16 Javascript
vue移动端使用canvas签名的实现
2020/01/15 Javascript
python提取页面内url列表的方法
2015/05/25 Python
老生常谈Python之装饰器、迭代器和生成器
2017/07/26 Python
Python利用turtle库绘制彩虹代码示例
2017/12/20 Python
Python爬虫常用库的安装及其环境配置
2018/09/19 Python
python机器学习之神经网络实现
2018/10/13 Python
python 将列表中的字符串连接成一个长路径的方法
2018/10/23 Python
用python按照图像灰度值统计并筛选图片的操作(PIL,shutil,os)
2020/06/04 Python
Pytorch生成随机数Tensor的方法汇总
2020/09/09 Python
python实现测试工具(二)——简单的ui测试工具
2020/10/19 Python
利用CSS3参考手册和CSS3代码生成工具加速来学习网页制
2012/07/11 HTML / CSS
HTML5使用drawImage()方法绘制图像
2014/06/23 HTML / CSS
Melissa鞋英国官方网站:Nonnon
2019/05/01 全球购物
安全生产承诺书范文
2014/05/22 职场文书
英语自我介绍演讲稿
2014/09/01 职场文书
学校政风行风整改方案
2014/10/25 职场文书
辞职信标准格式
2015/02/27 职场文书
小学教师教学反思
2016/02/24 职场文书
2019最新校园运动会广播稿!
2019/06/28 职场文书
分析并发编程之LongAdder原理
2021/06/29 Java/Android