<?php
$path = './';
//開啟資料夾
$dir_handle = opendir($path);
//讀取資料夾
while(false !== $file = readdir($dir_handle))
//關閉資料夾
closedir($dir_handle);
windows 預設使用 gbk 編碼<?php
$path = './';
function read_dirs_tree($path, $deep=0)
} //關閉資料夾
closedir($dir_handle);
}read_dirs_tree($path);
專案 ->windows:iconv('utf-8', 'gbk', 字串);
windows-> 專案:iconv('gbk', 'utf-8', 字串);
form 設定:method="post" enctype="multipart/form-data"
php 伺服器在接受到檔案型的表單資料後將檔案儲存於上傳臨時目錄(在指令碼週期內有效)
php.ini 配置:
upload_tmp_dir:修改上傳的臨時檔案的路徑
max_file_uploads:修改最多上傳檔案數
post_max_size:修改最大 post 資料最大限制
php_fileinfo.dll:開啟 mime 檢測拓展
error 分類(0:上傳成功):
}# 是否存在錯誤
if($tmp_file['error'] != 0)
# 尺寸
if ($tmp_file['size'] > $this->_max_size)
# 型別
# 從源檔名中提取字尾
$ext = strtolower(strrchr($tmp_file['name'], '.'));
if (!in_array($ext, $this->_allow_ext_list))
# mime, type元素。
if (!in_array($tmp_file['type'], $this->_allow_mime_list))
//php自己獲取檔案的mime,進行檢測
$finfo = new finfo(fileinfo_mime_type);//獲得乙個可以檢測檔案mime型別資訊的物件
$mime_type = $finfo->file($tmp_file['tmp_name']);//檢測
if (!in_array($mime_type, $this->_allow_mime_list))
# 移動
# 上傳檔案儲存位址
//建立子目錄
$subdir = date('ymdh') . '/';
if(!is_dir($this->_upload_path . $subdir))
# 上傳檔案起名
$upload_filename = uniqid($this->_prefix, true) . $ext;
if (move_uploaded_file($tmp_file['tmp_name'], $this->_upload_path . $subdir . $upload_filename)) else
}var_dump($_files);
if ($_files) else
}當操作的檔案過大時不能一次性操作全部檔案內容這個函式不適用!
php 提供了如下開啟模式(+ 擴充套件,擴充套件了操作):<?php
$file = './test.txt';
$content = date('h:i:s').'\n';
var_dump(file_put_contents($file, $content));//返回位元組數
var_dump(file_get_contents($file));
r(read)讀模式
w(write)替換寫模式,將檔案內容清零,自動建立不存在的檔案,只能開啟已經存在的檔案
x 替換寫,不會自動建立不存在的檔案
r + 讀寫模式,將檔案指標放在檔案開頭。
w + 讀替換寫模式,將檔案內容清零,將檔案指標放在檔案開頭,自動建立不存在的檔案。
a + 讀追加寫模式,寫操作永遠在檔案末尾,讀操作受限於檔案指標。
x + 讀替換寫模式,將檔案內容清零,將檔案指標放在檔案開頭,不會自動建立不存在的檔案,只能開啟已經存在的檔案
長度最大值為 8192 個位元組。
長度:指的是會讀取長度 - 1 個位元組
行末也是該函式的終止讀操作條件
終止讀取取決於先滿足那個條件,因此該函式也稱讀行函式
最常用:fgets($handle, 1024)
讀取指標位置字元,操作時會移動指標。
位置通常由檔案指標來指示,如果是 a 模式,不論指標在**,只能在末尾寫。
ftell(檔案控制代碼) 獲取指標位置
fseek(檔案控制代碼, int $offset) 設定指標位置
filemtime(檔案位址) 檔案的最後修改時間
filesize(檔案位址) 檔案大小
fseek($file_handle, 0);
echo'fread:',fread($file_handle, 5),'';//中?
echo'fgets:',fgets($file_handle, 2),'';//?
echo'fgetc:',fgetc($file_handle),'';//?
echo'ftell:',ftell($file_handle),'';//7
echo'filemtime:',filemtime($file),'';//1487850244
echo'filesize:',filesize($file),'';//21(3*7)
fclose($file_handle);
php檔案目錄操作
新建檔案 1 先確定要寫入檔案的內容 content 你好 2 開啟這個檔案 系統會自動建立這個空檔案 假設新建的檔案叫file.txt,而且在上級目錄下。w表示 寫檔案 fp下面要用到,表示指向某個開啟的檔案。fp fopen file.txt w 3 將內容字串寫入檔案 fp告訴系統要寫入的檔案...
php檔案 目錄操作
訪問本地 遠端的檔案 服務端請求無 跨域限制 resource 型別理解 作為乙個容器的例項,有的話裡面封裝了檔案內容 或者是二進位制 對完提供api,以操作封裝在內的檔案內容 像c 的stream例項 feof f end of file 是否檔案結尾 檔案操作 resource fopen st...
php檔案和目錄的基本操作
1.檔案的讀寫操作。在自己的 根目錄下新建乙個txt文件,插入幾行測試資料。編寫 使用php中檔案讀寫的相關函式,實現對該文件的讀寫操作。要求,幾個常用函式都盡量練習到。filename d phpstudy www php25 1.txt content 123456789101112.n han...