PHP面试题之文件目录操作,
PHP面试题之文件目录操作,
获取文件后缀,遍历目录层次
<span>/*</span><span>* * 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 </span><span>*/</span> <span>function</span> get_ext1(<span>$filename</span><span>) { </span><span>return</span> <span>strrchr</span>(<span>$filename</span>,'.'<span>); } </span><span>function</span> get_ext2(<span>$filename</span><span>){ </span><span>return</span> <span>substr</span>(<span>$filename</span>,<span>strrpos</span>(<span>$filename</span>,'.'<span>)); } </span><span>function</span> get_ext3(<span>$filename</span><span>){ </span><span>return</span> <span>array_pop</span>(<span>explode</span>('.',<span>$filename</span><span>)); } </span><span>function</span> get_ext4(<span>$filename</span><span>){ </span><span>return</span> <span>pathinfo</span>(<span>$filename</span>,<span>PATHINFO_EXTENSION); } </span><span>function</span> get_ext5(<span>$filename</span><span>){ </span><span>return</span> <span>strrev</span>(<span>substr</span>(<span>strrev</span>(<span>$filename</span>),0,<span>strpos</span>(<span>strrev</span>(<span>$filename</span>),'.'<span>))); } </span><span>$filename</span> = "1.php"<span>; </span><span>echo</span> get_ext1(<span>$filename</span>)."\n"<span>; </span><span>echo</span> get_ext2(<span>$filename</span>)."\n"<span>; </span><span>echo</span> get_ext3(<span>$filename</span>)."\n"<span>; </span><span>echo</span> get_ext4(<span>$filename</span>)."\n"<span>; </span><span>echo</span> get_ext5(<span>$filename</span>)."\n";
<span>/*</span><span>* * 遍历目录(递归) * @param string $dir 目录名且最后没有/ * @return array $files 整个目录结构 </span><span>*/</span> <span>function</span> myScandir(<span>$dir</span><span>) { </span><span>$files</span> = <span>array</span><span>(); </span><span>if</span>(<span>$handle</span> = <span>opendir</span>(<span>$dir</span><span>)){ </span><span>while</span> ((<span>$file</span> = <span>readdir</span>(<span>$handle</span>)) != <span>false</span><span>){ </span><span>if</span>(<span>$file</span> != "." && <span>$file</span> != ".."<span>){ </span><span>$newDir</span> = <span>$dir</span>."/".<span>$file</span><span>; </span><span>if</span>(<span>is_dir</span>(<span>$newDir</span><span>)){ </span><span>$files</span>[<span>$file</span>] = myScandir(<span>$newDir</span><span>); }</span><span>else</span><span>{ </span><span>$files</span>[] = <span>$file</span><span>; } } } </span><span>closedir</span>(<span>$handle</span><span>); </span><span>return</span> <span>$files</span><span>; } } </span><span>$dir</span> = "/dirname"<span>; </span><span>print_r</span>(myScandir(<span>$dir</span>));

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

mPDF
mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod