即时使用以下代码;
if( ! file_exists( $path ) ) { die( "'" . $path . "' not vaild path"); }
copy( $path, ltrim($create_folder . ltrim($path, "./"), ".") );
echo "'" . $path. "' => '" . $create_folder . ltrim($path, "./") . "'<br />";
第一个if语句返回true但复制函数返回;
Warning: copy('./files/c7a628cba22e28eb17b5f5c6ae2a266a/0003.css') [function.copy]: failed to open stream: No such file or directory
'./files/c7a628cba22e28eb17b5f5c6ae2a266a/0003.css' => './224efcdebda48350056af291f64a9311/files/8b571e7fbf9bacf4473024b11f78bc0dfiles/c7a628cba22e28eb17b5f5c6ae2a266a/0003.css'
如果有人知道为什么会非常感激。
答案 0 :(得分:2)
您可能会注意到下半场缺少斜线。如同,你的一个路径元素是“8b571e7fbf9bacf4473024b11f78bc0dfiles”而不是“8b571e7fbf9bacf4473024b11f78bc0d / files”。试试$create_folder . '/' . ltrim($path, "./")
但真正的答案是“你的文件实际上不存在。不,真的,PHP是正确的”。它只是谈论目的地不存在;来源很好。