PHP mkdir()、chmod() 和 Windows

2022-01-01 00:00:00 windows directory php chmod

我正在使用 PHP 函数 mkdir($path, 0777) 在 Apache 服务器(在 Windows 上运行)上创建一个新目录.

I am using the PHP function mkdir($path, 0777) to create a new directory on an Apache server (running on Windows).

当我创建它并查看文件夹时,Windows 已将目录设置为只读.有没有办法在不使用 exec() 到 cacls.exe 的情况下改变它?PHP 文档指出 chmod() 在 Windows 上不起作用,但没有说明替代方法.

When I create this and view the folders, Windows has set the dir as read only. Is there a way of changing this without using exec() to cacls.exe? The PHP documentation states that chmod() doesn't work on Windows but doesn't say anything about a replacement method.

Google 似乎对这个没有帮助.

Google seems to be a little unhelpful on this one.

在与我的两位教育机构的管理员交谈几分钟后,他们的学生测试 PHP 服务器似乎正在运行一个 USB 驱动器.我有一种感觉,这与它有关拍脑袋

After several minutes talking to administrators at my two-bit educational institution, it seems that their test PHP server for students is being run off of a USB drive. I have a feeling that this will have something to do with it slaps head

推荐答案

以下内容:

<?php
mkdir( "foo" )
?>

(注意没有指定模式)在 Win2K 上对我有用——它创建了一个没有设置属性的文件夹.

(note no mode specified) works for me on Win2K - it creates a folder with no attributes set.

只是有一个想法 - 可能与权限有关吗?尝试从命令行运行上面的代码 &看看会发生什么:

Just had a thought - could it be something to do with permissions? Try running the above code from the command line & see what happens:

C:> c:phppgp.exe
    <?php
    mkdir( "foo" )
    ?>
    ^Z

相关文章