我是php的初学者。在一个场景中,我想在名称中创建带正斜杠的目录(09/01/2017)。我该如何解决?
$my_date = "09/01/2017"
$new_path = "../Images/".$my_date;
if(!file_exists($new_path)) {
mkdir($new_path , 0777);
}
编辑:我正在使用带有php服务器的macos。在macos中,可以使用斜杠创建文件夹。
答案 0 :(得分:0)
<?php
$my_date = "09/01/2017";
$new_path = "images/".$my_date;
if (!is_dir($new_path))
{
mkdir($new_path , 0777,true);
}
?>
mkdir($ new_path,0777,true); //对于递归目录创建是真的。
在您的情况下,如果您使用09/01/2017创建目录,则会创建
File Tree:
images
--09
--01
--2017
因为文件系统不允许正斜杠作为目录名。而不是这样你可以创建09012017或09-01-2017。
答案 1 :(得分:0)
嘿@Milan Mendpara我想告诉你,你不能创建任何名为char /:*?&#34;&lt;&gt; |的文件夹,即使你不能在你的操作系统中创建一个目录。当你在你的操作系统中尝试它时,将出现以下情况
所以我认为你应该从2017年1月9日到09-01-2017更改你的目录,在我的情况下,我没有../'图像&#39;目录,所以我只是建立一个目录,我的PHP文件存在,所以下面是你的代码
<?php
$my_date = "09-01-2017";
$tempDir = __DIR__ . DIRECTORY_SEPARATOR . $my_date; // __DIR__ means a path where your php file is present and DIRECTORY_SEPARATOR means __DIR__.'/' and then give you directory name like __DIR__ . DIRECTORY_SEPARATOR . $my_date
if(!is_dir($temp_dir)){
mkdir($temp_dir);
}
&GT;