PHP文件系统相关函数的功能详解_PHP教程

原创
2016-07-15 13:29:44 726浏览

我们通过对关于文件路径的解释:在Windows中,可以在路径中使用/和符号,而在其他的操作系统中只能使用/符号。出于一致性的缘故,我们统一使用/符号。

下面的PHP文件系统相关函数脚本样例可以显示一个目录清单,注释已经包含在代码中:

  1. /*把要读取的目录的全路径名存入一个名字为$dir_name的变量中。 */
  2. $dir_name = "/home/me/";
  3. /* 创建一个句柄,其值是打开一个给定目录的结果*/
  4. $dir = opendir($dir_name);
  5. /* 建立一个文字块,用以放置列表元素(文件名字)*/
  6. $file_list = "
      "
    ;
  7. /* 使用一个while语句,读取已经打开的目录中的所有元素,如果文件的名字不是“.”或“..”,则显示列表中的名字*/
  8. while ($file_name = readdir($dir)) {
  9. if (($file_name != ".") && ($file_name != "..")) {
  10. $file_list .= "
  11. $file_name"
  12. ;
  13. }
  14. }
  15. $file_list .= "";
  16. /*关闭打开的目录,结束PHP模块*/
  17. closedir($dir);
  18. ?>
  19. HTML>
  20. HEAD>
  21. TITLE>Directory ListingTITLE>
  22. HEAD>
  23. BODY>
  24. P>Files in: echo "$dir_name"; ?>p>
  25. echo "$file_list"; ?>
  26. BODY>
  27. HTML>

好了,我们已经得到了一个目录清单。需要注意的是,要读取一个文件(稍后我们将进行讲解)或目录的内容,PHP运行的系统上的用户必须至少有读取文件的权限。

下面是一个如何拷贝文件的PHP文件系统相关函数例子:

  1. /*把你要拷贝的原文件的全路径赋给一个名字为$original的变量中,把拷贝的文件的全路径赋予一个名字为$copied的变量中*/
  2. $original = "/home/me/mydatabasedump";
  3. $copied = "/archive/mydatabasedumo_1010";
  4. /* 使用copy()函数拷贝原始文件,如果拷贝没有完成则会显示一个错误信息*/
  5. @copy($original, $copied) or die("Couldn't copy file.");
  6. ?>

这个PHP文件系统相关函数的例子是一个文件备份系统的原型。在这段脚本运行时,它把文件拷贝到一个不同的位置进行保存。稍微修改一下守护程序,就可以在一天中你指定的时刻执行它,而无需用户的干预。

假定你在系统上安装了Lynx,可以创建一个守护程序的条目访问这个文件,访问这个文件会运行这个脚本并建立一个拷贝文件,下面的例子将在上午5点钟运行这个脚本,然后关闭Lynx:

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

如果运行的是CGI版本的PHP,可以跳过Lynx部分,而直接调用二进制文件:

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


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446330.htmlTechArticle我们通过对 关于文件路径的解释:在Windows中,可以在路径中使用/和符号,而在其他的操作系统中只能使用/符号。出于一致性的缘故,我们...
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。