Paket Nasıl Kurulur?
Önceki yazıda composer nasıl kurulacağı konusuna değinmiştim. Bu yazıda paketlerin nasıl kurulacağı ve kullanılacağı konusuna değineceğim. Composer yüklenen paketleri vendor klasörüne kaydedip bizden sadece autoload dosyasını projeye dahil et diyor. require ile vendor içindeki autoload dosyasını dahil ettikten sonra kütüphaneyi projede kullanıyoruz. İlk kütüphane(bağımlılık) kuralım ve nasıl çalıştığını açıklayalım. Kütüphanelerin kurulması için proje dizinine composer.json adında bir tane dosya oluşturuyoruz. Oluşturduğumuz json dosyası bağımlılıklarımız içerecek olan dosyadır.
1 2 3 4 5 |
{ "require": {} } |
require projemizde kullanacağımız kütüphaneleri içerecek olan kısmı ifade ediyor.
Kütüphaneleri iki şekilde kurabiliriz.
1.yöntem : require içine kurulacak olan kütüphane ismi ve versiyonu yazılır.
composer.json dosyasını aşağıdaki gibi düzenledikten sonra komut isteminden json dosyası güncellenir(update) yada yüklenir(install). Yükleme işlemi tamamlandıktan sonra composer vendor adında bir klasör oluşturacaktır. Bağımlılık yöneticisi bu klasörden çalıştırılacaktır.
1 2 3 4 5 6 7 |
{ "require": { "monolog/monolog": "1.20.*" } } |
Komut satırına da
1 2 3 |
composer install |
2.yöntem: Packagist sitesinde ilgili paket cmd (komut satırından kurulur.)
Bu yöntem diğerine göre daha kolay bir yöntemdir. Composer.json dosyasının yüklü olduğu dizine gelip aşağıda göründüğü gibi packagist sitesinden komut yükleme kodu alınır.
Komut istemine yapıştırıp yüklenmesi sağlanır. Yükleme tamamlandıktan sonra json dosyasını yukarıdaki gibi kendisi günceleyecektir.
1 2 3 |
composer require monolog/monolog |
Composer Nasıl Kullanılır?
Paketin yada paketlerin kurulumu tamamlandıktan sonra kullanılacak php sayfasına sadece composerın autoload dosyasını göstermek yeterli olacaktır. autoload dosyası yüklü paketleri kendisi bulup projeye yükleyecektir.
1 2 3 |
require 'vendor/autoload.php'; |
test.php adında bir sayfa oluşturup aşağıdaki şekilde kodları kontrol edebilirsiniz. Monolog log oluşturmak için kullanılan bir pakettir. Aşağıdaki kodları yazdığınızda ana dizine path adında bir klasör açıp içinde log tutacaktır.
1 2 3 4 5 6 7 8 9 10 11 12 |
use Monolog\Logger; use Monolog\Handler\StreamHandler; // create a log channel $log = new Logger('name'); $log->pushHandler(new StreamHandler('path/to/your.log', Logger::WARNING)); // add records to the log $log->warning('Foo'); $log->error('Bar'); |
Blade View Motorunun Kullanılması
Bu yazıyı okuyana kadar laravel kütüphanesini bir şekilde duymuşsunuzdur. Laravel kullanmadan master page gibi özellikleri kullanmak için blade template engine kurmak için packgist üzerinde blade yazarak arattığımda composer require philo/laravel-blade adında bir paket buldum.
Komut istemine aşağıdaki komutları yazıp enter tuşuna basarak paketi kuruyoruz. Paket yüklendikten sonra composer.json dosyası kendiliğinden güncellenecektir.
1 2 3 |
composer require philo/laravel-blade |
calisma.php adında bir dosya açıp aşağıdaki kodları yazıyoruz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<?php require 'vendor/autoload.php'; use Philo\Blade\Blade; //anadizinde views adında bir klasör oluşturun $views = __DIR__ . '/views'; //anadizine cache adında bir klasör oluşturun $cache = __DIR__ . '/cache'; $blade = new Blade($views, $cache); echo $blade->view() ->make('sayfa') ->with('site','YazilimBilisim.net') ->render(); |
/views/sayfa.blade.php dosyasının içeriği
1 2 3 4 5 6 7 8 9 10 11 |
<!doctype html> <html> <html> <meta charset="utf-8"> </html> <body> <h1>{{ $site }}</h1> </body> </html> |
Blade Template Engine kullanımı ile ilgili daha fazla bilgi için laravel.com/docs/5.2/blade adresini kullanabilirsiniz.