標籤:pre code log 下載 ret 方式 filename nbsp integer
/** * PHP高效遍曆檔案夾 * @param string $path 目錄路徑 * @param integer $level 目錄深度 */function fn_scandir($path = ‘./‘, $level = 0) { $file = new FilesystemIterator($path); $filename = ‘‘; $prefix = ‘‘; $url = ‘‘; foreach ($file as $fileinfo) { $filename = $fileinfo->getFilename(); $filepath = $path . $filename; $prefix = $level > 0 ? (‘|‘ . str_repeat(‘--‘, $level)) : ‘‘; if ($fileinfo->isDir()) { $filepath = $filepath . ‘/‘; $url = ‘<a href="?path=‘ . $filepath . ‘">‘ . $filename . ‘</a>‘; echo ‘<strong>‘ . $prefix . $url . ‘/</strong>‘ . ‘<br />‘; } else { $url = ‘<a href="?path=‘ . $filepath . ‘">‘ . $filename . ‘</a>‘; echo $prefix . $url . ‘<br />‘; } if ($fileinfo->isDir()) { fn_scandir($filepath, $level + 1); } }}/** * PHP高效讀取檔案 * @param string $filepath * @return string */function fn_tail($filepath) { if (file_exists($filepath)) { $fp = fopen($filepath, "r"); $str = ""; $buffer = 1024; //每次讀取 1024 位元組 while (!feof($fp)) {//迴圈讀取,直至讀取完整個檔案 $str .= fread($fp, $buffer); } return $str; }}
樣本檔案:[下載]
著作權聲明:本文採用署名-非商業性使用-相同方式共用(CC BY-NC-SA 3.0 CN)國際許可協議進行許可,轉載請註明作者及出處。 本文標題:php高效遍曆檔案夾、高效讀取檔案 本文連結:http://www.cnblogs.com/sochishun/p/7375328.html 本文SoChishun (郵箱:14507247#qq.com | 部落格:http://www.cnblogs.com/sochishun/) 發表日期:2017年8月16日 |
php高效遍曆檔案夾、高效讀取檔案