【问题标题】:PHP Script mkdir "No error, but no directory"PHP 脚本 mkdir “没有错误,但没有目录”
【发布时间】:2013-05-08 03:50:13
【问题描述】:

我目前正在我的个人网站上学习和处理一些 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 没有抛出任何错误。

是我缺少一些简单的东西,还是我只是愚蠢?

谢谢, 亨利·哈里斯

【问题讨论】:

  • 您是否开启了 PHP 错误报告功能?
  • 我相信是这样......没有抛出任何东西,但它没有被创建。
  • 您在 ../projects/projectform .. 中的权限如何?
  • @matzone 特权是什么意思?
  • 755 是我的 CHMOD 值...如果这是你想要的?

标签: php html directory


【解决方案1】:

您是否尝试过使用相对路径而不是 url?

【讨论】:

    【解决方案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 并且存在于您执行mkdir 时的默认目录中。这可以解释为什么没有错误以及为什么目录似乎不存在。我会调查一下。

    但是,这与问题无关,可以通过不使用 URL 来解决。

    【讨论】:

    • 我已经弄清楚了,如果我这样做的话 $result = mkdir("dir");它在 projectform 下创建一个名为“dir”的目录
    猜你喜欢
    • 1970-01-01
    • 2018-01-24
    • 1970-01-01
    • 1970-01-01
    • 2013-07-18
    • 2022-01-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多