PHP脚本mkdir“没有错误,但没有目录”

问题描述:

我目前在我的个人网站上学习和搞乱一些HTML和PHP。我需要使用PHP创建一个“新目录”。PHP脚本mkdir“没有错误,但没有目录”

我目前使用http://dummycode.com/projects/projectform/form.html为了尝试做到这一点。它是运行PHP脚本,但它也没有创造/projects/projectform/dir

这里下一个新的目录是form.php的文件中的代码:

<?php 
$result = mkdir("http://dummycode.com/projects/projectform/dir", 0700); 
if ($result == 1) { 
    echo "Success creating directory!"; 
} else { 
    echo "Error creating directory!"; 
} 

?> 

我似乎无法找到问题,因为每次它说“创建目录错误!”但PHP并没有抛出任何错误。

有没有简单的我想念,或者我只是愚蠢?

感谢, 亨利·哈里斯

+0

您是否打开了PHP错误报告? – 2013-05-14 00:52:39

+0

我相信如此......没有任何东西被抛出,但它没有被创建。 – 2013-05-14 00:53:36

+0

在../projects/projectform ..中,您的特权如何? – matzone 2013-05-14 00:56:33

您是否尝试过使用相对路径而不是一个网址?

虽然PHP 5引入用于协议包装载体,所述载体是不普遍的,如所解释here

5.0.0自PHP 5.0.0的mkdir()也某些URL封装一起使用。请参阅支持的协议和封装以获取哪些封装支持mkdir()的列表。

HTTP协议不支持mkdir,看here

Wrapper Summary 
Attribute         Supported 
---------------------------------------  --------- 
Restricted by allow_url_fopen    Yes 
Allows Reading        Yes 
Allows Writing        No 
Allows Appending       No 
Allows Simultaneous Reading and Writing  N/A 
Supports stat()        No 
Supports unlink()       No 
Supports rename()       No 
Supports mkdir()       No <---- 
Supports rmdir()       No 

如果你想建立一个目录,你需要使用适当的(文件系统为基础的),它做的文件规范而不是网址。

什么可能情况是,正在创建一个目录,它只是它会被称为http://dummycode.com/projects/projectform/dir并在当你执行mkdir无论你的默认目录是存在的。这将解释为什么没有错误以及为什么目录似乎不存在。我会看看那个。

但是,这是问题的切线,可以通过不使用URL解决。

+0

我弄明白了,如果我做$ result = mkdir(“dir”);它在projectform下创建一个名为“dir”的目录 – 2013-05-14 01:06:35