- Posted on
Composer PHP
Merhaba Arkadaşlar ,
Bu yazımda “Composer” kullanımından bahsedeceğim. Amaç olarak, geliştirilmiş bir projenin updatelerini sağlamak ve kurulumunu kolaylaştırmak olduğunu söyleyebiliriz. Örneğin basit bir framework geliştirdik bu tabiki kendi kütüphaneniz bile olabilir. Şimdiye kadar kullandığınız bütün kütüphaneleri yoplayıp bir paket yapma imkanı sağlıyor ve en avantajlı yanı da başka kütüpnalere bağımlı bir projeniz var ise 1 satır kod ile update yapmanızı sağlıyor. Bana oldukça “Maven” i çağrıştırdı temel farklar dışında belirli standart oluşturmayı hedefleyen güzel bir opensource proje olmuş. Sözü fazla uzatmadan kuruluma geçelim.
Not: yazının buradan sonrasını windows üzerine kurulum ile devam edeceğim linux kullanıcıları için kurulumu siteden takip edebilirsiniz.
Kuruluma başlamadan önce Apache PHP Server’a sahip olmalısınız. Google da arama ile “XAMPP” veya “WAMP” kurulumunu kolayca bulabilirsiniz. Sanırım artık Apache’miz hazır.
http://getcomposer.org/download/ –> Bu linkten Composer-setup.exe dosyasını indirin.
Kurulumu yaparken “php.exe” nin bulunduğu dosya yolunu bulun. Benim bilgisayarımda xampp kurulu ve dosya yolum “C:\xampp\php\php.exe”
Artık kullanıma hazırız. Composer kullanırken önemli iki dosya var oda “composer.json” ve “composer.lock”. Aşağıda örnek bir composer.json dosyası var.
{ "name": "mailgun/mailgun-php", "description": "The Mailgun SDK provides methods for all API functions.", "require": { "guzzle/guzzle": "3.7.*" }, "require-dev": { "phpunit/phpunit": "3.7.*" }, "autoload": { "psr-0": { "Mailgun\\Tests": "tests/", "Mailgun": "src/" } }, "license": "MIT", "authors": [ { "name": "Travis Swientek", "email": "[email protected]" } ], "minimum-stability": "stable" }
Gördüğünüz gibi hazırlanan kütüphane ile ilgili olarak tanımlama , yazar , lisans , gerekli kütüphaneler ile ilgili ayrıntılı bilgiler bulunuyor. “Composer.lock” dosyasında ise kullandığımız depencies kütüphaneler bulunuyor. Örnek bir dosya aşağıdaki linkte mevcut. https://github.com/composer/composer/blob/master/composer.lock
Geliştirmekte olduğum projede mailgun SDK ‘sını kullanmam gerekmişti. https://github.com/mailgun/mailgun-php buradan dosyayı indirerek sizde composer üzerine örnek bir proje kurabilirsiniz. İndirdiğiniz github projesini “C:/xampp/htdocs” içine kendi public dosya yolunuza atın.
Buradan sonrasını console la devam ediyoruz.
cd /xampp/htdocs/mailgun -> Projenin bulunduğu dizine gidin php -r "eval('?>'.file_get_contents('https://getcomposer.org/installer'));"
composer.json da tanımlı olan kütüphaneler artık composer.phar isimli bir dosyada oluşturulacak.
php composer.phar install
komutu ile de vendor/autoloader.php klasörü oluşacak ve artık indirmiş olduğunuz framwork kullanıma hazır..
Sizde en çok kullandığınız kütüphaneleri github’a atarak her defasında copy-paste yapmak kurtulabilirsiniz.
Kolay Gelsin Muharrem Tığdemir..
Yazımı hazırlarken faydalığım kaynaklar
http://www.cangelis.com/php-composer-nedir-nasil-kullanilir/
https://github.com/mailgun/mailgun-php
http://blog.mailgun.com/post/the-php-sdk-the-first-of-many-official-mailgun-sdks/