2013-10-05 69 views
0

我在我的網站上輸入圖像的輸入想獲得的圖像URL,什麼是需要驗證的是:接受由URL

  1. 我收到的圖像?
  2. 它是64x64嗎?
  3. 圖片類型png/jpg/gif/etc?

所有我上面的條款在想最好的辦法是getimagesize

如果任何人都可以想到更多的條款來驗證和更好的解決方案,我會非常感謝,謝謝大家,祝你有美好的一天。

回答

2

爲先,

你可以使用getimagesize()返回值爲零的尺寸在非圖片。

對於第二個,

$imageName = $_FILES['upload']['name']; 
list($width, $height, $type, $attr) = getimagesize($imageName); 

你可以$width$height

對於第三檢查條件,

$imageName = $_FILES['upload']['name']; 
$ext = pathinfo($imageName, PATHINFO_EXTENSION);// alternative method 

你可以使用$type從第二檢查extention

隨着$ext您可以檢查圖像

這裏extention是鏈接,你http://www.phpeasystep.com/phptu/25.html

所以乾脆你可以簡單地使用getimagesize()這3個條件

+0

我的數據庫存儲URL我沒有上傳圖片,你認爲我應該上傳它嗎? –

+0

如果在數據庫中,只需在數據庫 –

+0

從'$ imageName'中指定'url'我明白你的意思,但是,你認爲我應該將圖像上傳到我的服務器嗎? –

2

這是PHP代碼檢查格式(比如www.example.com/image.png)

$url = "some url"; 
$format = substr($url , -3); 
if($format == "png" || $format == "jpg" || $format == "gif") 
    print "right"; 
else 
    print "wrong"; 
+0

謝謝mamal,我將等待更多的解決方案。 –

+1

請注意,這可能不一定總是有效;例如,我可以使用'.gif'並將其重命名爲'.jpg'。 – Codecat

+0

感謝您的注意。 –