I must create recursive directories and create a file for every folder. I want like this:
modules/ modules/default modules/default/test_module modules/default/test_module/a modules/default/test_module/a/test_module.php modules/default/test_module/m modules/default/test_module/m/test_module.php modules/default/test_module/c modules/default/test_module/c/test_module.php modules/root modules/root/test_module modules/root/test_module/a modules/root/test_module/a/test_module.php modules/root/test_module/m modules/root/test_module/m/test_module.php modules/root/test_module/c modules/root/test_module/c/test_module.php templates templates/default templates/default/test_module templates/default/test_module/test_module.tpl templates/root templates/root/test_module templates/root/test_module/test_module.tpl
But this code generate like this:
|-- modules | |-- default | | |-- root | | | `-- test_module | | | |-- a | | | | `-- test_module.php | | | |-- c | | | | `-- test_module.php | | | `-- m | | | `-- test_module.php | | `-- test_module | | |-- a | | | `-- test_module.php | | |-- c | | | `-- test_module.php | | `-- m | | `-- test_module.php | |-- root | | |-- index | | | `-- c | | | `-- index.php | | |-- modules | | | |-- a | | | | `-- modules.php | | | |-- c | | | | `-- modules.php | | | `-- m | | | `-- modules.php | | `-- user | | |-- a | | | `-- user.php | | |-- c | | | `-- user.php | | `-- m | | `-- user.php | `-- templates | `-- root | |-- default | | `-- test_module | | `-- test_module.tpl | `-- test_module | `-- test_module.tpl
Code is:
protected function createFiles($files, $parent_directory = null)
{
echo $parent_directory."
</br>
";
if (!$parent_directory) {
$parent_directory = www;
}
foreach ((array)$files as $key => $value) {
if (is_array($value)) {
if (!is_dir($parent_directory . $key)) {
mkdir($parent_directory . $key,0777);
chmod($parent_directory.$key,0777);
}
$parent_directory .= $key . '/';
$this->createFiles($value, $parent_directory);
} else {
$parent_directory_=$parent_directory.$key . '/';
if(!is_dir($parent_directory_)){
mkdir($parent_directory_,0777);
chmod($parent_directory_,0777);
}
$alias = explode('.',$value);
$alias = $alias[0];
$defaultAjaxContent = <<<AJAX
<?php
class {$alias} extends ajax{
/**
* Autocreated
**/
public function initAjax(){
}
}
?>
AJAX;
$file = fopen($parent_directory_.$value, 'w+');
$write = fwrite($file, $defaultAjaxContent);
if (!$write) {
throw new AjaxCatcher("{$parent_directory_}{$value} oluşturulurken beklenmedik bir hata oluştu. Lütfen tekrar deneyiniz. ");
}
}
}
//$file = fopen($files['default_ajax']);
return 1;
}
Reason why not use recursive mkdir :
$dirs = array();
$dirs['modules']['default'][$alias]['a'] = $alias . ".php";
$dirs['modules']['default'][$alias]['m'] = $alias . '.php';
$dirs['modules']['default'][$alias]['c'] = $alias . '.php';
$dirs['modules']['root'][$alias]['a'] = $alias . '.php';
$dirs['modules']['root'][$alias]['m'] = $alias . '.php';
$dirs['modules']['root'][$alias]['c'] = $alias . '.php';
$dirs['templates']['root'][$alias] = $alias . '.tpl';
$dirs['templates']['default'][$alias] = $alias . '.tpl';
$this->createFiles($dirs);
thanks.