ホームページ >バックエンド開発 >PHPチュートリアル >我是wamp环境,怎么样让php的opendir函数可以接受相对路径?

我是wamp环境,怎么样让php的opendir函数可以接受相对路径?

WBOY
WBOYオリジナル
2016-06-06 20:06:531303ブラウズ

问题描述:
需求:希望不暴露本地信息,所以想opendir()函数可以接受相对路径。
做过的功课:搜索过一个使用系统命令行的net use 指令将本地资源映射为网络驱动的方法。

<code>// Define the parameters for the shell command
$location = "\\servername\sharename";
$user = "USERNAME";
$pass = "PASSWORD";
$letter = "Z";

// Map the drive
system("net use ".$letter.": \"".$location."\" ".$pass." /user:".$user." /persistent:no>nul 2>&1");

// Open the directory
$dir = opendir($letter.":/an/example/path")</code>

还有这样的

<code>system('net use K: \\192.168.10.10\pictures /user:username password /persistent:no');
$share = opendir('\\\\192.168.10.10\\pictures);
</code>

依旧存在疑问:
这个方法我还有很多不明白的地方,以至于从未成功开启过这个服务。
1这个$letter是什么?系统提示我只能填一个字符,否则不规范。
2$location怎么填?以及将来如果搬上独立主机服务器了,$location又该怎么填?
3账号密码是什么?我是一个本地服务器,地址就是127.0.0.1,或者叫localhost,从来没有设置过账号密码,但是这又是必填项。
我全无头绪,还请大家帮忙详细解答一下。

回复内容:

问题描述:
需求:希望不暴露本地信息,所以想opendir()函数可以接受相对路径。
做过的功课:搜索过一个使用系统命令行的net use 指令将本地资源映射为网络驱动的方法。

<code>// Define the parameters for the shell command
$location = "\\servername\sharename";
$user = "USERNAME";
$pass = "PASSWORD";
$letter = "Z";

// Map the drive
system("net use ".$letter.": \"".$location."\" ".$pass." /user:".$user." /persistent:no>nul 2>&1");

// Open the directory
$dir = opendir($letter.":/an/example/path")</code>

还有这样的

<code>system('net use K: \\192.168.10.10\pictures /user:username password /persistent:no');
$share = opendir('\\\\192.168.10.10\\pictures);
</code>

依旧存在疑问:
这个方法我还有很多不明白的地方,以至于从未成功开启过这个服务。
1这个$letter是什么?系统提示我只能填一个字符,否则不规范。
2$location怎么填?以及将来如果搬上独立主机服务器了,$location又该怎么填?
3账号密码是什么?我是一个本地服务器,地址就是127.0.0.1,或者叫localhost,从来没有设置过账号密码,但是这又是必填项。
我全无头绪,还请大家帮忙详细解答一下。

这是 SMB 共享目录(也就是 windows 的文件、目录共享),这里 $letter 是 Windows 的盘符,可开启 Guest 账号,账号就是 guest 密码不设就是空串。


如果担心部署的服务器情况不同,可将 IP,路径前缀 部分写入配置文件嘛。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。