"Enter"a basıp içeriğe geçin

Veritabanı Bağlantısı

Projenizde bir ve ya birden fazla veritabanı kullanıyor olabilirsiniz. PHPXI birden fazla veritabanına aynı anda basitçe bağlanmanızı ve yönetmenizi sağlayan bir yapıya sahiptir.

Veritabanı Bağlantı Bilgilerinin Tanımlanması

PHPXI veritabanı bağlantı bilgilerini /PHPXI/APPLICATION/Config/Database.php yapılandırma dosyasından alır.

$config["GroupName"] = [
    "host"      => "localhost",
    "user"      => "root",
    "password"  => "",
    "name"      => "test",
    "prefix"    => "",
    "charset"   => "utf-8",
    "collation" => "utf8mb4_general_ci",
    "driver"    => "mysql",
    "class"     => "mysqli"
];

Not : İster tek bir veritabanı kullanın ister birden fazla, her veritabanı bağlantı bilgisinin benzersiz bir grup adı olmak zorundadır.

Detaylı yapılandırma ayarları için bakınız; Database.php Yapılandırması

Not: PHPXI v1.5 ile birlikte güvenlik gerekçesi ile otomatik bağlantı seçeneğini kaldırdı.

Veri Tabanına Bağlanmak

Veri tabanı işlemleri yapacağınız modellerinizde;

use DB;

ile veri tabanı kullanacağınızı belirtmelisiniz.

Hangi veritabanına bağlanacaksanız;

$db = DB::connect("GroupName");

GroupName olarak belirtilen bölüm Config/Database.php yapılandıma dosyasında bağlantı bilgilerine verdiğiniz grup adıdır.

Kullanılacak Sınıf Seçimi

PHPXI v1.5.1 ile birlikte dahili bir PDO kütüphanesine sahip oldu ve ayrıca kendi veri tabanı kütüphanenizi kullanabilme seçeneğine de artık sahipsiniz.

Veri tabanı işlemlerinde kendi kütüphanenizi kullanmak istiyorsanız, bkz; Kendi Veri Tabanı Kütüphanenizi Kullanmak

PDO vs MySQLi

Her iki kütüphane de projenizin standart ihtiyaçlarına en iyi çözümü sunabilmek için geliştirildi.

PHPXI tarafından sunulan PDO ve MySQLi kütüphaneleri arasında kullanım, metot isimleri olarak bir fark yoktur. Bunu ortak bir dil oluşturmak ve okunabilirliği artırmak amacıyla yapıyoruz.

MySQLi sadece MySQL veri tabanını destekler ve MySQL veri tabanı için daha hızlı çalıştığı gözlenmektedir.

PDO kütüphanesi MySQL, MsSQL, PostgreSQL ve SQLite gibi popüler bir çok veri tabanını destekler.

PHPXI, kullanacağınız veri tabanı MySQL ise MySQLi kütüphanesini kullanmanızı önerir.