在Windows XP计算机上安装的PHP(XAMPP)中,试图读取本地网络服务器上存在的目录。我is_dir()用来检查它是否是我可以读取的目录。
is_dir()
在Windows资源管理器中,键入\\\server\dir并显示该目录。当我映射网络驱动器时,也可以访问它z:\dir。
\\\server\dir
z:\dir
在PHP中,我具有该脚本:
<?php if( is_dir($dir){ echo 'success' } ) ?>
因为$dir我尝试过:
$dir
/server/dir
//server/dir
\server\dir
\\server\dir
\\\\server\\dir
和
z:\\dir
z:/dir
z://dir
但是我没有成功吗?任何的想法?谢谢
我通过更改服务器注册表中的某些内容来解决该问题,如本次讨论的最后一个答案所述:
http://bugs.php.net/bug.php?id=25805
还是要感谢VolkerK和Gumbo!我喜欢stackoverflow和他们的优秀人员,他们如此迅速地为您提供帮助!!
编辑(取自php.net):
该服务对共享和管道等网络资源的访问受到限制,因为它没有凭据,并且必须使用空会话进行连接。下面的注册表项包含NullSessionPipes和NullSessionShares值,这些值用于指定空会话可以连接到的管道和共享:HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters或者,您可以将REG_DWORD值RestrictNullSessAccess添加到密钥并将其设置为0,以允许所有空会话访问该计算机上创建的所有管道和共享。
将RestrictNullSessAccess = 0添加到您的注册表中。