1

我有各种我想使用 PHP 映射的文件夹和文件。将它们存储在数据库中并不是真正的选择,它们必须存储在 Windows 文件系统中。

不幸的是,由于驱动器的限制(它是一个网络驱动器)。我无法使用 scandir() 和 set_include_path(),因为我收到“open_basedir 限制生效”错误消息。我无法解决这个问题,因为我无法访问允许我在安全属性中添加 IIS_IUSR 的安全权限。我应该补充一点,作为普通用户,我对驱动器上的所有内容具有完全的读/写访问权限。

我需要一个在 PHP 要求时运行的工具,而不是按计划运行的工具。

我考虑过的一种方法是使用用 C# 编写的服务,并在需要时让 PHP 调用它。我只是不确定将它们粘合在一起的方法。

如果有人对如何做到这一点有任何更好的建议,请说。

4

1 回答 1

3

如果您对可以遍历的路径有限制(例如 open_basedir),则无法读取该目录之外的内容,因此您必须改用“外部”内容。由于您使用的是 Windows,而我在该操作系统上几乎没有经验,因此我会选择最简单的解决方案:只需调用“dir”程序。我认为这可能有效,但不幸的是,我无法对其进行测试:

<?php
$output = `dir /s C:\directory\to\traverse`;

var_dump( $output );
于 2012-08-14T08:32:42.240 回答