奇怪的行为,可能: (文件夹的名称取决于日期 - 目的是网站的点击计数器,按天细分)
if (!is_dir($folder)) { // first access in the day
mkdir($folder);
}
嗯:在互联网上的服务器上运行良好。 但是当我在本地尝试使用Easy PHP的服务器模拟器时,会发生:
(a)第一次,没问题。该文件夹不存在并且已创建。
(b)随后,例如对页面刷新,程序流程再次进入IF(!!!)生成类型的错误(在mkdir行):"警告:mkdir():在[...]"。
中没有这样的文件或目录目录$ folder的所有父部分都存在。
由于
答案 0 :(得分:0)
尝试使用递归目录创建功能:
function mkdir_r($dirName, $rights = 0777)
{
$dirs = explode(DIRECTORY_SEPARATOR , $dirName);
$dir = '';
if (strpos($dirs[count($dirs) - 1], '.')) {
array_pop($dirs);
}
foreach ($dirs as $part) {
$dir .= $part . DIRECTORY_SEPARATOR ;
if (!is_dir($dir) && strlen($dir) > 0) {
mkdir($dir, $rights);
}
}
}
这样,如果它们不存在,就会创建您想要创建的所有目录。
不幸的是,mkdir没有递归地工作。