我正在执行以下命令:
<?php
copy ("http://localhost/.../DSCF8253.JPG" , "sites/default/files/DSCF8253.JPG"); // Success!
copy ("http://localhost/.../DSCF8260.JPG" , "sites/default/files/DSCF8260.JPG"); // Success!
copy ("http://localhost/.../HERMAN 085.jpg" , "sites/default/files/HERMAN 085.jpg" ); // Fail!
?>
Run Code Online (Sandbox Code Playgroud)
前两个复制正常,但不是最后一个.为什么?
它必须与文件名有关(最后一个在085之前有一个空格).
任何帮助将不胜感激!
http://localhost/.../HERMAN 085.jpg
Run Code Online (Sandbox Code Playgroud)
应该
http://localhost/.../HERMAN%20085.jpg
Run Code Online (Sandbox Code Playgroud)
当涉及到无效的URL时,复制&http包装器对浏览器/用户代理的宽容度要低一些.网址中的空格无效,因此应该是urlencode'd.