Haydar ŞAHİN

Laravel’de getID3 Paketi ile Dosyalardan Metadata Çekmek

Bildiğiniz composer (Besteci, bestekâr demek aynı zamanda ) paket yönetici sağolsun pek çok php kütüphanesini kendi projemize tereyağından kıl çeker gibi ekleyebiliyoruz. Bu yazıda bunlardan biri olan getID3 paketini kullanacağız.

İlk işimiz paketimizi projemize dahil etmek. Composer’ın daha önceden kurulmuş olduğunu varsayarak devam ediyorum. Bunun için uçbirim, terminal, komut satırı artık ne kullanıyorsanız açıyoruz. Daha sonra şu komutla paketi indiriyoruz. Bu internet hızınızla bağlantılı biraz sürebilir. Paketin bu versiyonu için PHP 5.4 ve daha üst bir versiyon kullanıyor olmanız gerekiyor.

composer require james-heinrich/getid3

Paket indikten sonra örnek olarak bir ses dosyasının süresini string olarak almaya çalışalım. Siz istediğiniz dosya tipinde hangi metadataları alabilecekiğinizi öğrenemek isterseniz, şu sayfayı ziyaret edebilirsiniz. İki tane kullanış senaryomuz var. İlki bana oldukça çirkin geliyor ama yinede örnek olsun diye göstereyim. Buradaki ‘\’ işareti yani Türkçede ters taksim, İngilizcede ise backslash denilen işarete dikkat edin.

 $audioMeta = new \getID3();
 $audioMetaData=$audioMeta->analyze($audioFileLocation);
 $episode->duration= $audioMetaData['playtime_string'];//Çıktı : 00:02

Bana daha mantıklı ve daha güzel gözüken kullanımda ise öncelikle Controllerımızdaki namespace in hemen altına şu kodu yazıyoruz.

use getID3;

Sonra istediğimiz fonsiyona şu kadu yazabiliriz.

$audioMeta = new getID3();
$audioMetaData=$audioMeta->analyze($audioFileLocation);
$episode->duration= $audioMetaData['playtime_string'];//Çıktı : 00:02
Exit mobile version