Evvela composer paket yöneticisiyle projemizi oluşturalım.
PHP 7 altındaki sürümler için kullanmanız gereken sürüm 5.4 olanı. 5.5 ve üstü olanlar PHP 7 gerektiriyor. Eğer PHP 7 ile çalışacaksanız sürüm belirtmeden gerekliliği indirebilirsiniz.
$ composer require illuminate/database:5.4Öncelikle bir 'kapsül' oluşturacağız. Laravel yaratıcıları Eloquent'in 'kapsül' ile çatı dışında kullanılabilmesini amaçlamışlar.
index.php
require __DIR__ . '/vendor/autoload.php';
use Illuminate\Database\Capsule\Manager as Capsule;
$capsule = new Capsule();
$capsule->addConnection([
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'database',
'username' => 'root',
'password' => 'password',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
]);
/*
SQLite bağlantısı için
$capsule->addConnection([
'driver' => 'sqlite',
'database' => '/hedef/dizin/database.sqlite',
'prefix' => ''
]);
Dipnot: addConnection'ın ikinci parametresi bağlantı adını alır.
*/
// Kapsülü statik metodlarla global olarak erişilebilir hale getirir
$capsule->setAsGlobal();
// Eloquent ORM'i başlat
$capsule->bootEloquent();Kurulumu tamamladık. Şimdi ilk örneğimizi sorgu oluşturucu ile yapalım:$kullanicilar = Capsule::table('kullanicilar')->where('oylama', '>', 100)->get();Doğrudan sorgu çalıştırmak istediğimizde select metodunu kullanıyoruz:$results = Capsule::select('select * from kullanicilar where id = ?', [$id]);Şema oluşturucusunu da kullanabiliyoruz. (Migrasyon/taşıma (Migration) için kullanılır)Capsule::schema()->create('kullanicilar', function ($table) {
$table->increments('id');
$table->string('epota')->unique();
$table->string('sifre');
$table->unsignedTinyInteger('yas')->nullable();
$table->boolean('aktif')->default(true);
$table->timestamps();
});Son olarak model sınıfımız ile kullanabiliriz. Kendimize has yazdığımız bir MVC iskeletinde kullanmak için oldukça kullanışlı oluyor.class Kullanici extends Illuminate\Database\Eloquent\Model
{
}
$users = Kullanici::where('oylama', '>', 1)->get();Kolay gelsin.Kaynak: https://yilmazdemir.com.tr/eloquent-...sina-kullanimi