簡體   English   中英

如何從PHP上傳URL中的圖像

[英]How can I upload an image from a URL in PHP

在使用GD或imagemagick的PHP中我如何從URL上傳照片,我想構建一個我可以通過幾個參數傳遞並上傳圖像的函數,我可以將一個大圖像上傳,將其調整為較小,然后調整一些關閉它的更多縮略圖並將所有位置保存到1個圖像的位置但是我想添加從URL獲取圖像然后在其上運行我的代碼以調整大小和制作拇指的功能。

我會使用卷曲或其他任何例子或想法將不勝感激

$image = @ImageCreateFromString(@file_get_contents($imageURL));

if (is_resource($image) === true)
{
    // image is valid, do your magic here
}

else
{
    // not a valid image, show error
}

如果URL不是有效圖像,則兩個函數上的@用於防止PHP拋出錯誤。

根據您的PHP配置,fopen可能會也可能不會直接允許它: http//php.net/manual/en/function.fopen.php

或者,您可以直接打開套接字( http://php.net/manual/en/book.sockets.php )和寫入/讀取HTTP( http://www.faqs.org/rfcs/rfc2616.html )。 除非你非常小心權限(特別是執行),否則我不會使用curl,或者可以保證沒有惡意的人可以訪問該工具,因為你將有效地打開一個潛在的攻擊途徑(嚴格來說,你已經是,但這有幾種不同的方式可以濫用)

$img = '';
$fp = fopen($url, 'rb');
if($fp) {
    while($buf = fread($fp, 1024)) {
        $img .= $buf;
    }    
}
fclose($fp);

//假設啟用了url fopen包裝器

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM