在我的public function addAction()中包含如下一段程序。
$dir_patient="D:\\tumor\\".$this->view->patientID;//为了创建新的数据文件夹
$dir_study="D:\\tumor\\".$this->view->patientID."\\".$this->view->studyID;//为了创建新的数据文件夹$dir="D:\\tumor\\".$this->view->patientID."\\".$this->view->studyID."\\mrs".$this->view->mrsID;
if (!is_dir($dir_patient))
mkdir($dir_patient,0700);//如果不经过这一步,下面的一段程序if程序就不能执行,原因不明。
if (!is_dir($dir_study))
mkdir($dir_study,0700);//如果不经过这一步,下面的一段程序if程序就不能执行,原因不明。
if (!$dir_exist)
{ while (!is_dir($dir))
{
mkdir($dir,0700);
}
}
程序可以云心成功,且能正确的建立的相关的文件夹(D盘中的tumor文件夹已经事先建好)。
但是,如果把
if (!is_dir($dir_patient))
mkdir($dir_patient,0700);//如果不经过这一步,下面的一段程序if程序就不能执行,原因不明。
if (!is_dir($dir_study))
mkdir($dir_study,0700);//如果不经过这一步,下面的一段程序if程序就不能执行,原因不明。
if (!$dir_exist)
{ while (!is_dir($dir))
{
mkdir($dir,0700);
}
}
改为:
if (!$dir_exist)
{ while (!is_dir($dir))
{
mkdir($dir,0700);
}
}
从逻辑上看,这两端程序所实现的效果是一样的,但是,问题是,第二段程序不能运行成功,且服务器会运行好久好久后,给出一张空的网页。
总结问题,我猜想:只能一步一步的 mkdir($dir_patient,0700);
为了验证猜想,我写了如下一段程序:
public function createfileAction()
{
$dir="D:\\nn\\mm\\zz";
if (!is_dir($dir))
mkdir($dir,0700);
if (!is_dir($dir))
mkdir($dir,0700);
if (!is_dir($dir))
mkdir($dir,0700);
}
运行结果却是三个警告:
Warning: mkdir() [function.mkdir]: No such file or directory in D:\php\wamp\www\mvcnew\application\modules\mrs\controllers\IndexController.php on line 607
Warning: mkdir() [function.mkdir]: No such file or directory in D:\php\wamp\www\mvcnew\application\modules\mrs\controllers\IndexController.php on line 609
Warning: mkdir() [function.mkdir]: No such file or directory in D:\php\wamp\www\mvcnew\application\modules\mrs\controllers\IndexController.php on line 611
哪位大牛帮忙指点一下,这是为什么?