Tôi muốn có thể truy xuất hình ảnh từ xa từ máy chủ web, định lại mẫu và sau đó phân phối lên trình duyệt VÀ lưu nó vào một tệp. Dưới đây là những gì tôi có cho đến nay:Lấy hình ảnh từ xa bằng cách sử dụng cURL rồi resample
$ch = curl_init();
// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "$rURL");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
// grab URL and pass it to the browser
$out = curl_exec($ch);
// close cURL resource, and free up system resources
curl_close($ch);
$imgRes = imagecreatefromstring($out);
imagejpeg($imgRes, $filename, 70);
header("Content-Type: image/jpg");
imagejpeg($imgRes, NULL, 70);
exit();
Cập nhật
cập nhật để phản ánh câu trả lời đúng dựa trên thảo luận dưới đây
Cảm ơn ... Tôi đã cập nhật câu hỏi của mình ngay bây giờ với thông tin của bạn ... Điều này yêu cầu hai mẫu hình ảnh mặc dù trái ngược với chỉ một lần nữa .. lại có vẻ không hiệu quả. Một cách tốt hơn để làm điều này là gì? – Chris
@Chris Hai mẫu của hình ảnh? Tại sao? Bạn lưu trữ cùng một tài nguyên được lấy mẫu lại vào tệp jpeg và phục vụ nó. Tại sao bạn sẽ thực hiện việc lấy mẫu lại hai lần? –
Xin lỗi tôi đã giải thích sai những gì bạn đã viết. Tôi đã cập nhật mã trong câu hỏi của mình. Nó tạo ra jpeg một lần với chất lượng thấp hơn. Có lẽ điều này là đủ để giảm kích thước tập tin? Sau đó tôi lưu nó vào tập tin, nhưng để phục vụ nó sau đó tôi cần phải đọc các tập tin một lần nữa, tôi có thể không lưu trữ nó tạm thời trong bộ nhớ hoặc đây là một chi phí không đáng kể? – Chris