如何从PHP中访问网络驱动器中的图像或文件

时间:2018-02-15 10:55:34

标签: php scandir network-drive opendir net-use

我正在尝试从连接到我的计算机的网络驱动器访问图像。 但我无法使用PHP访问它。我使用net use命令映射它仍然无法加入它。请帮帮我。

 if($fh=opendir('\\\\F:')) {
 while (false !== ($fi =readdir($fh))) {
 echo "$fi\n";
 }
 }

即使我也试过下面的代码

   <?php
    $path = '\\Z:';

    $user = "administrator";
    $pass = "dev";
    $drive_letter = "Z";

    system("net use ".$drive_letter.": \"".$path."\" ".$pass." /user:".$user." /persistent:no>nul 2>&1");
    $location = $drive_letter.":/";

    if ($handle = opendir($location)) {
       while (false !== ($entry = readdir($handle))) {
       echo "$entry"; echo "<br>";
       } 
       closedir($handle);
     }
     ?>        

1 个答案:

答案 0 :(得分:0)

我认为该问题与运行Apache的用户有关,因为您的用户帐户上有一个带有凭据的映射驱动器,它与运行Apache的驱动程序不同。

首先,让Apache以管理员身份运行,然后在脚本中运行net use命令:

<?php
$path = '\\\\younetworkdrive\\yoursharedfolder'; 

$user = "mickeymouse";
$pass = "waltdisney";
$drive_letter = "Z";

system("net use ".$drive_letter.": \"".$path."\" ".$pass." /user:".$user." /persistent:no>nul 2>&1");
$location = $drive_letter.":/";

if ($handle = opendir($location)) {
    while (false !== ($entry = readdir($handle))) {
	echo "$entry";
    } 
    closedir($handle);
}

我刚尝试过......这是工作