PHP Otomatik görüntü formatı algılama

6 Cevap php

Biçimini autodetecting, / tmp/jkhjkh78 ve ondan bir php görüntü oluşturmak: Ben şu anda geçici bir yer eski koymak bir kullanıcı yüklenen görüntü almak için bir yol arıyorum.

Imagefromjpeg, imagefrompng, vb yakalama denemede bir demet / daha bunu yapmak için daha akıllı bir yol var mı?

6 Cevap

Bu getimagesize işlevlerinden biri. Muhtemelen "getimageinfo" denilen gerekirdi, ama o sizin için PHP bulunuyor.

Sen, finfo_file () mime_content_type () görünüşe göre gelişmiş bir sürümünü deneyebilirsiniz.

Düzenleme: Tamam, getimagesize () daha iyidir ..

Mevcut ise () exif_imagetype kullanın ..:

http://www.php.net/manual/en/function.exif-imagetype.php

Eğer php yüklediğinizde ben (yani özellikle onları dışlamak yerine onları özellikle dahil olması) exif işlevleri varsayılan olarak kullanılabilir eminim

(Eğer Linux / Unix altında iseniz) bir sistem komutu çağırabilir, file isterseniz:

kender@eira:~$ file a
a: JPEG image data, EXIF standard 2.2

Bu koşula dayalı Uzantısı yanı sıra sonucu bilmek yardımcı olacaktır

$image_file = 'http://foo.com/images.gif';
$extension = substr($image_file, -4);
if($extension == ".jpg"){ echo 'Its a JPG Image.'; } else { echo 'Its not a JPG Image.'; }