加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 在网络驱动器上读取文件

发布时间:2020-12-13 18:14:25 所属栏目:PHP教程 来源:网络整理
导读:我在 Windows Server上运行Xampp; Apache作为具有本地帐户的服务运行. 在此服务器上,网络共享作为X:安装,具有特定凭据. 我想访问位于X上的文件:并运行以下代码 ?phpecho shell_exec("whoami");fopen('X:text.txt',"r");? 得到 theservernamethelocaluse
我在 Windows Server上运行Xampp; Apache作为具有本地帐户的服务运行.
在此服务器上,网络共享作为X:安装,具有特定凭据.

我想访问位于X上的文件:并运行以下代码

<?php
echo shell_exec("whoami");
fopen('X:text.txt',"r");
?>

得到

theservernamethelocaluser
Warning: fopen(X:text.txt) [function.fopen]: failed to open stream: No such file or directory

我尝试运行Apache,而不是作为服务,而是通过启动httpd.exe直接运行…
并且代码有效.

我看不出是什么导致服务和应用程序之间的区别以及如何使它工作.

您无法使用驱动器号执行此操作,因为网络映射驱动器仅供单个用户使用,因此服务无法使用(即使您要为该用户安装它).

你可以做的是直接使用UNC路径,例如:

fopen('\serversharetext.txt','r');

但请注意,对于UNC路径的PHP文件系统访问存在一些问题.一个例子是bug I filed for imagettftext,但是file_exists和is_writeable也存在问题.我没有报道后者,因为你可以从我对imagettftext的长期未知错误中看到,重点是什么.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读