$url1 = 'www.somewebsite.com/somefile.ext';
if (@copy($url1, "somefolder/filename.ext"))
{
echo 'File 1 saved.';
}
当我尝试在没有任何登录权限的情况下复制文件时,此代码运行良好。但是当我尝试使用登录权限复制文件时,该文件不会被复制。是否也可以发送登录信息?
通常的方法是在服务器之前对 URL 中的登录信息进行编码。 例如:
http://user:password@example.com/somefile.txt
记住要考虑安全性。
假设登录是基本的HTTP登录名,您可以使用stream_context_create
来传递您的详细信息:
$cred = sprintf('Authorization: Basic %s',
base64_encode($username . ":" . $password) );
$context = stream_context_create(array(
'http' => array(
'header' => $cred
)
));
$url1 = 'www.somewebsite.com/somefile.ext';
if (@copy($url1, "somefolder/filename.ext", $context))
{
echo 'File 1 saved.';
}