首頁 > php教程 > php手册 > 主體

PHP面试题之文件目录操作

WBOY
發布: 2016-06-06 19:41:14
原創
1468 人瀏覽過

本篇文章是我在之前面试这家公司时遇到的问题,当时代码写的不全,后来通过查阅相关资料,整理出来的一份分享给大家

这道题其实并不难,考点主要在函数substr() strrchr()  array_pop()  strrpos() strpos() strrev() explode()  pathinfo()。

废话不多说了,直接给大家贴代码了。

获取文件后缀,遍历目录层次

/** * 5种方式获取文件后缀名 * 这道题其实就是考函数substr() strrchr() array_pop() strrpos() strpos() strrev() explode() pathinfo() * @param string $filename 要处理的文件名 1.jpg/1.png/1.html/1.php * @return string .php/php */ function get_ext1($filename) { return strrchr($filename,'.'); } function get_ext2($filename){ return substr($filename,strrpos($filename,'.')); } function get_ext3($filename){ return array_pop(explode('.',$filename)); } function get_ext4($filename){ return pathinfo($filename,PATHINFO_EXTENSION); } function get_ext5($filename){ return strrev(substr(strrev($filename),0,strpos(strrev($filename),'.'))); } $filename = "1.php"; echo get_ext1($filename)."\n"; echo get_ext2($filename)."\n"; echo get_ext3($filename)."\n"; echo get_ext4($filename)."\n"; echo get_ext5($filename)."\n"; /** * 遍历目录(递归) * @param string $dir 目录名且最后没有/ * @return array $files 整个目录结构 */ function myScandir($dir) { $files = array(); if($handle = opendir($dir)){ while (($file = readdir($handle)) != false){ if($file != "." && $file != ".."){ $newDir = $dir."http://www.jb51.net/".$file; if(is_dir($newDir)){ $files[$file] = myScandir($newDir); }else{ $files[] = $file; } } } closedir($handle); return $files; } } $dir = "/dirname"; print_r(myScandir($dir));

以上代码是不是很简单啊,就这几个函数,函数掌握了,这道题就很容易的解决了,,希望本文分享对大家有所帮助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!