[php]
/*
反復法を使用してディレクトリを再帰的に作成する
実際、PHP5.0.0 以降では、mkdir はすでにディレクトリを再帰的に作成できます。
ここで重要なのは、反復を自分で学習することなので、カスケード ディレクトリを作成することから始めました。
開発中は、mkdir('./a/b/c/d/e',0777,true); と記述する必要があります。
公式説明:
PHP では再帰関数を呼び出すことができます。
ただし、100 ~ 200 レベルを超える再帰的な関数/メソッド呼び出しは避けてください。
スタックがクラッシュして現在のスクリプトが終了する可能性があるためです。
*/
関数 it_mk_dir($path){
//作業作成ディレクトリを必要とするタスクを保存する配列を定義します
$arr = 配列();
//作成するディレクトリが存在しない場合は、追加するタスクがあることを意味します
while(!is_dir($path)){
array_unshift($arr,$path);
//タスクを追加し、親ディレクトリを取得します
$path = ディレクトリ名($path);
}
//タスクがない場合(つまり、作成する必要のあるディレクトリがすでに存在する場合)
if(empty($arr)){
true を返します
}
//それ以外の場合はタスクの実行を開始します
foreach($arr as $k => $v){
//上記の array_unshift プッシュメソッドを使用すると、次のように直接呼び出すことができます
mkdir($v) ? print(''.$v.' ディレクトリの作成に成功しました!
'):print('作成に失敗しました ->'.$v.'
');
}
true を返します
}
[php]
/*
再帰的メソッドの作成
*/
関数 mk_dir($path){
if(is_dir($path)){
true を返します
}
//親ディレクトリが存在するか、mkdir を呼び出す前に作成する必要があります
is_dir(dirname($path)) || mk_dir(dirname($path)) : false;
}
it_mk_dir('./a/b/c/d/e/f/g');
http://www.bkjia.com/PHPjc/477541.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/477541.html技術記事 [php] ?php /* 反復メソッドを使用してディレクトリを再帰的に作成します。実際、PHP5.0.0 以降、mkdir はすでにディレクトリを再帰的に作成できます。 ここで重要なのは、反復を自分で学習することなので、カスケード ディレクトリを作成することから始めます...