熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> PHP編程 >> 正文

PHP學習的經驗和技巧(四)

2022-06-13   來源: PHP編程 

  四PHP和文件系統的維護

  PHP中有許多與文件系統有關的函數這些函數不僅可以打開文件還可以顯示目錄中的內容移動文件和其他一些功能許多人甚至用PHP開發基於互聯網的文件資源管理器

  關於文件路徑的解釋在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運行的系統上的用戶必須至少有讀取文件的權限

  下面是一個如何拷貝文件的例子

  <? /*把你要拷貝的原文件的全路徑賦給一個名字為$original的變量中把拷貝的文件的全路徑賦予一個名字為$copied的變量中*/
  $original = /home/me/mydatabasedump;
  $copied = /archive/mydatabasedumo_;
  /* 使用copy()函數拷貝原始文件如果拷貝沒有完成則會顯示一個錯誤信息*/
  @copy($original $copied) or die(Couldnt copy file);
  ?>

  這個例子是一個文件備份系統的原型在這段腳本運行時它把文件拷貝到一個不同的位置進行保存稍微修改一下守護程序就可以在一天中你指定的時刻執行它而無需用戶的干預

  假定你在系統上安裝了Lynx可以創建一個守護程序的條目訪問這個文件訪問這個文件會運行這個腳本並建立一個拷貝文件下面的例子將在上午點鐘運行這個腳本然後關閉Lynx

   * * * [username] lynx dump http://localhost/copyfilephp >/dev/null >&

  如果運行的是CGI版本的PHP可以跳過Lynx部分而直接調用二進制文件

   * * * [username] php /path/to/copyfilephp >/dev/null >&


From:http://tw.wingwit.com/Article/program/PHP/201311/21354.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.