ホームページ  >  記事  >  バックエンド開発  >  PHP の単純なトラバーサルの名前変更

PHP の単純なトラバーサルの名前変更

巴扎黑
巴扎黑オリジナル
2016-11-23 15:56:561284ブラウズ

$path = './fzlhead/';

function get_filetree_scandir($path){

$result = array();

$temp = array();

if (!is_dir ($path)||!is_readable($path)) return null; // ディレクトリの有効性をチェックします

$allfiles = scandir($path) // ディレクトリ内のすべてのファイルとフォルダーを取得します

($allfiles as $) filename) { //ディレクトリ内のファイルとフォルダーを走査します

if (in_array($filename,array('.','..')) //無視します。..

$fullname = $ path.'/'.$filename; //完全なファイルパスを取得します

if (is_dir($fullname)) { //ディレクトリの場合は再帰を続行します

$result[$filename] = get_filetree_scandir($ fullname); //再帰が開始されます

}

else {

$temp[] = $filename //ファイルの場合は配列に格納します

$uniqid = uniqid('apoo_');

$ext = pathinfo( $filename, PATHINFO_EXTENSION);

rename($fullname,$path.'/'.$uniqid.'.'.$ext);

}

}

foreach ($temp as $tmp) { // 一時配列の内容を結果を保持する配列に保存します

$result[] = $tmp // これにより、フォルダーを前に、ファイルを後ろに並べることができます

; }

return $result;

}

print_r( get_filetree_scandir($path));

?>


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。