note 72116 added to function.mkdir
| From: | Microphage71 at osu1 dot php dot net | Date: | Wed, 03 Jan 2007 14:30:08 +0000 |
| Subject: | note 72116 added to function.mkdir | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-121239@lists.php.net to get a copy of this message | ||
/* Créé un chemin complet
* $root : chemin de base accessible
* $path : suite de dossier à créer séparés par un /
* $mode : mode octale des dossier à créer
*/
function makeDir ($root, $path, $mode)
{
$r = trim ($root);
if (substr ($r, strlen ($r) - 1, 1) != '/')
{
$r .= '/';
}
if (is_dir ($r))
{
$p = trim ($path);
if (strlen ($p) > 0)
{
if (substr ($p, 0, 1) == '/')
{
$p = substr ($p, 1);
}
$p = trim ($p);
if (strlen ($p) > 0)
{
if (substr ($p, strlen ($p) - 1, 1) == '/')
{
$p = substr ($p, 0, strlen ($p) - 1);
}
$tab = explode ('/', $p);
$error = false;
foreach ($tab as $t)
{
$r .= $t;
if (is_dir ($r.'/'))
{
$error = true;
break;
}
else
{
if (substr (phpversion (), 0, 1) == '5')
{
mkdir ($r.'/', $mode);
}
else
{
mkdir ($r, $mode);
}
$r .= '/';
}
}
return !$error;
}
else
{
return false;
}
}
else
{
return false;
}
}
else
{
return false;
}
}
ex 1:
-----
makeDir ('./', 'bob/L/eponge', 0644);
crééra une arborescence:
o ./ (dossier courant)
+ bob
+ L
+ eponge
----
Server IP: 217.174.196.197
Probable Submitter: 193.252.59.207
----
Manual Page -- http://www.php.net/manual/en/function.mkdir.php
Edit -- https://master.php.net/note/edit/72116
Del: integrated -- https://master.php.net/note/delete/72116/integrated
Del: useless -- https://master.php.net/note/delete/72116/useless
Del: bad code -- https://master.php.net/note/delete/72116/bad+code
Del: spam -- https://master.php.net/note/delete/72116/spam
Del: non-english -- https://master.php.net/note/delete/72116/non-english
Del: in docs -- https://master.php.net/note/delete/72116/in+docs
Del: other reasons-- https://master.php.net/note/delete/72116
Reject -- https://master.php.net/note/reject/72116
Search -- https://master.php.net/manage/user-notes.php