Fügen Sie dem Bild auf dem Mobiltelefon ein Wasserzeichen hinzu und speichern Sie es dann lokal auf dem Telefon.
Warum werden die Downloads, die Sie jetzt sehen, alle auf den Server heruntergeladen? Können sie nicht auf das lokale Telefon heruntergeladen werden?
Der Download-Code bezieht sich darauf
public function downloadImage($url, $path='images/')
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
$file = curl_exec($ch);
curl_close($ch);
$this->saveAsImage($url, $file, $path);
}
private function saveAsImage($url, $file, $path)
{
$filename = pathinfo($url, PATHINFO_BASENAME);
$resource = fopen($path . $filename, 'a');
fwrite($resource, $file);
fclose($resource);
}
downloadImg是把远程图片下载到服务器本地,而如果需要将手机将图片保存到本地,这个只能靠浏览器,js去实现,php是运行在服务端的
楼上正解 下载完全可以不使用JS a标签就可以搞定
浏览器直接a链接文件地址就可以了
针对你的问题, 答案是: 不能.
你这段代码就是通过http, 保存远端文件到PHP所在的服务器的.
要下载到手机上, 参考http文件下载.
header('Content-Disposition: attachment; filename=xxxxx');
readfile('PHP服务器上的文件');