我目前正在学习并在我的个人网站上搞乱一些HTML和PHP。我需要使用PHP创建一个“新目录”。
我目前正在使用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 :(得分:2)
虽然PHP 5引入了对协议包装器的支持,但支持并不普遍,如here所述:
5.0.0从PHP 5.0.0开始,
mkdir()
也可以与一些URL包装器一起使用。有关哪些包装器支持mkdir()
的列表,请参阅支持的协议和包装器。
mkdir
不支持HTTP协议,请参阅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
如果要创建目录,则需要使用适当的(基于文件系统的)文件规范而不是URL。
可能发生的事情是正在创建一个目录,它只是被称为http://dummycode.com/projects/projectform/dir
并存在于执行{{1}时默认目录中的任何内容}。这可以解释为什么没有错误以及为什么目录似乎不存在。我想看看。
然而,这与问题无关,可以通过不使用URL来解决。
答案 1 :(得分:1)
您是否尝试使用相对路径而不是网址?