我开发了一些python应用程序,所以我知道如何在python本地执行此操作,但我正在与一些PHP开发人员(我对PHP一无所知)合作,他们说这不能用PHP完成。这是一个想法:一个PHP驱动的远程网站,它创建/托管文件。使用网络浏览器我想从这个网站下载一系列文件夹和文件到本地机器上覆盖已经存在的同名文件/文件夹。因此,在我的浏览器中,我单击下载按钮,要求我浏览到本地或网络文件夹以下载文件夹和文件。目前我们只是下载一个包含所有这些文件和文件夹的.zip文件,我们必须解压缩并手动移动,复制粘贴等,非常混乱和繁琐。 PHP和其他一些语言必须有更好的方法吗?
答案 0 :(得分:1)
不,不可能从PHP(服务器端语言)访问客户端计算机(从浏览器)并直接操作他的文件系统,硬盘驱动器或类似的东西。这不是它的工作方式。
考虑一下,如果可以实现,我们会有严重的安全威胁,例如我们访问像somebadassdude.com这样的页面,他们有一个PHP脚本,创建无限的文件夹和文件来填补我们所有的高清......那很软。
但希望浏览器不要通过安全设计来实现这一点。
看看这个:
正如您在图中所看到的,浏览器和服务器通过HTTP请求和响应来相互响应。响应。它们之间没有通信,就像在客户端操作系统上运行的本地程序一样。您使用他的浏览器进行处理,并且无法命令浏览器操作客户端硬盘,如果可以发生这种情况,请查看我之前提到的安全保护程序。
为了更清楚,您的PHP脚本在您的服务器上运行,而不是在客户端计算机上运行。它仅在用户/浏览器请求服务器上的特定资源时响应,并且响应HTTP响应,并且它可以包含HTML,Json或文件(由外部程序下载或可视化),或者其他任何内容。 / p>
您的选择有限:
所以IHMO我认为Java Applet可能是最适合您的解决方案:
顺便说一句,我个人不喜欢Java,但它是一个工具,你必须使用正确的工具来完成工作。
干杯。