国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php創建多級目錄完整封裝類操作方法

2024-05-04 23:59:34
字體:
來源:轉載
供稿:網友

創建多級目錄函數中調用創建指定下的指定文件的函數:

 public function create_dir($dir,$mode=0777)  {    return is_dir($dir) or ($this->create_dir(dirname($dir)) and mkdir($dir, $mode));  }

創建指定路徑下的指定文件,string 需要包含文件名和后綴path(需要包含文件名和后綴),booleanover_write 是否覆蓋文件,int 設置時間。默認是當前系統時間time設置時間。默認是當前系統時間,intatime 設置訪問時間。默認是當前系統時間。函數如下中調用了create_dir創建目錄函數及刪除unlink_file函數:

public function create_file($path,$over_write=FALSE,$time=NULL,$atime=NULL)  {    $path = $this->dir_replace($path);    $time = empty($time) ? time() : $time;    $atime = empty($atime) ? time() : $atime;    if(file_exists($path) && $over_write)    {      $this->unlink_file($path);    }    $aimDir = dirname($path);    $this->create_dir($aimDir);    return touch($path,$time,$atime);  }

刪除非空目錄函數,說明:只能刪除非系統和特定權限的文件,否則會出現錯誤,string目錄路徑dirName目錄路徑,booleanis_all是否刪除所有,boolean $del_dir 是否刪除目錄,函數如下:

public function remove_dir($dir_path,$is_all=FALSE)  {    $dirName = $this->dir_replace($dir_path);    $handle = @opendir($dirName);    while (($file = @readdir($handle)) !== FALSE)    {      if($file != '.' && $file != '..')      {        $dir = $dirName . '/' . $file;        if($is_all)        {          is_dir($dir) ? $this->remove_dir($dir) : $this->unlink_file($dir);        }        else         {          if(is_file($dir))          {            $this->unlink_file($dir);          }        }      }    }    closedir($handle);    return @rmdir($dirName);  }

替換路徑中//的字符相應的字符函數:

public function dir_replace($path)  {    return str_replace('//','/',str_replace('//','/',$path));  }
/**   * 指定文件編碼轉換   * @param string $path 文件路徑   * @param string $input_code 原始編碼   * @param string $out_code 輸出編碼   * @return boolean   */  public function change_file_code($path,$input_code,$out_code)  {    if(is_file($path))//檢查文件是否存在,如果存在就執行轉碼,返回真    {      $content = file_get_contents($path);      $content = string::chang_code($content,$input_code,$out_code);      $fp = fopen($path,'w');      return fputs($fp,$content) ? TRUE : FALSE;      fclose($fp);    }  }

/**
* 取得上傳文件信息
* @param $file file屬性信息
* @return array
*/

public function get_upload_file_info($file)  {    $file_info = $_FILES[$file];//取得上傳文件基本信息    $info = array();    $info['type'] = strtolower(trim(stripslashes(preg_replace("/^(.+?);.*$/", "//1", $file_info['type'])), '"'));//取得文件類型    $info['temp'] = $file_info['tmp_name'];//取得上傳文件在服務器中臨時保存目錄    $info['size'] = $file_info['size'];//取得上傳文件大小    $info['error'] = $file_info['error'];//取得文件上傳錯誤    $info['name'] = $file_info['name'];//取得上傳文件名    $info['ext']  = $this->get_ext($file_info['name']);//取得上傳文件后綴    return $info;  }

/**
* 取得文件路徑信息
* @param $full_path 完整路徑
* @return ArrayObject
*/

public function get_file_type($path)  {    //pathinfo() 函數以數組的形式返回文件路徑的信息。    //---------$file_info = pathinfo($path); echo file_info['extension'];----------//    //extension取得文件后綴名【pathinfo($path,PATHINFO_EXTENSION)】-----dirname取得文件路徑【pathinfo($path,PATHINFO_DIRNAME)】-----basename取得文件完整文件名【pathinfo($path,PATHINFO_BASENAME)】-----filename取得文件名【pathinfo($path,PATHINFO_FILENAME)】    return pathinfo($path);  }

/**
* 返回指定文件和目錄的信息
* @param string $file
* @return ArrayObject
*/

public function list_info($file)  {    $dir = array();    $dir['filename']  = basename($file);//返回路徑中的文件名部分。    $dir['pathname']  = realpath($file);//返回絕對路徑名。    $dir['owner']   = fileowner($file);//文件的 user ID (所有者)。    $dir['perms']   = fileperms($file);//返回文件的 inode 編號。    $dir['inode']   = fileinode($file);//返回文件的 inode 編號。    $dir['group']   = filegroup($file);//返回文件的組 ID。    $dir['path']    = dirname($file);//返回路徑中的目錄名稱部分。    $dir['atime']   = fileatime($file);//返回文件的上次訪問時間。    $dir['ctime']   = filectime($file);//返回文件的上次改變時間。    $dir['perms']   = fileperms($file);//返回文件的權限。     $dir['size']    = filesize($file);//返回文件大小。    $dir['type']    = filetype($file);//返回文件類型。    $dir['ext']    = is_file($file) ? pathinfo($file,PATHINFO_EXTENSION) : '';//返回文件后綴名    $dir['mtime']   = filemtime($file);//返回文件的上次修改時間。    $dir['isDir']   = is_dir($file);//判斷指定的文件名是否是一個目錄。    $dir['isFile']   = is_file($file);//判斷指定文件是否為常規的文件。    $dir['isLink']   = is_link($file);//判斷指定的文件是否是連接。    $dir['isReadable'] = is_readable($file);//判斷文件是否可讀。    $dir['isWritable'] = is_writable($file);//判斷文件是否可寫。    $dir['isUpload']  = is_uploaded_file($file);//判斷文件是否是通過 HTTP POST 上傳的。    return $dir;  }

以上這篇php創建多級目錄完整封裝類操作方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 阿克苏市| 丰都县| 翁牛特旗| 东城区| 噶尔县| 阳城县| 瑞丽市| 余姚市| 乡城县| 武定县| 新郑市| 布拖县| 云阳县| 湖南省| 湘潭县| 湘潭县| 沂南县| 新乡县| 吴川市| 胶南市| 兴城市| 五河县| 温泉县| 色达县| 嘉善县| 庆城县| 兴国县| 西宁市| 逊克县| 宝兴县| 克什克腾旗| 通渭县| 同仁县| 贺兰县| 娄烦县| 托克托县| 辽阳市| 冀州市| 东乡族自治县| 西丰县| 黎平县|