FuelPHP Bootstrap AutoLoader Kullanımı

FuelPHP Bootstrap AutoLoader Kullanımı

FuelPHP ile uygulamalarınızı geliştirirken aynı kodları tekrar tekrar yazmak yerine ayrı bir sınıf yapıp bunları controller metotlarımızın içinde tekrar tekrar kullanabiliriz. Bu bize hem kolaylık sağlar hemde kodları geliştirmek istediğimizde tek yerden bu işlemi halletmiş olabiliriz. Bunun için öncelikle oluşturacağımız sınıfların yolunu ve adlarını belirlemelisiniz. Yalnız bu sınıflar Bootstrap ile sayfa her yüklendiğinde yeniden include edileceği için sadece uygulamanızda genel olarak kullanmanız gereken sınıfları bootstrap’a eklemeniz makul olacaktır.

Ayrıca her uygulama yeniden başlatıldığında yeniden yüklenen sınıflar yerine, metota özel ihtiyacınız olduğu zaman yüklenmesini istediğiniz sınıflar için ise FuelPHP AutoLoader sınıfını kullanacağız. Bu sınıfla ilgili detayları ilerleyen zamanlarda gireceğimi umuyorum ve örneğimize geçiyoruz.

app/classes/controller/ yolunun içinde bir core.php dosyası ve bu dosyanın içinde Core isimli bir sınıf olduğunu varsayalım hatta varsaymayalım oluşturalım.

Bu sınıfım singleton bir sınıf olsun ve yapısı gereği static metotlardan oluşsun. Şimdi biz bu çekirdek sınıfı fuelphp’nin Welcome controller’ında kullanalım. Ancak bundan önce bootstrap.php içine bu dosyayı autoloader’a eklememiz gerekiyor.

Varsayılan olarak bu halde olan bir bootstrap dosyam var burada AutoLoader sınıfına ait add_classes metotunu kullanacağım, bu metotu ayrıca metotlarınızda da kullanarak sınıfları include edebilirsiniz.

add_classes metotuna array olarak tanımladığımız sınıfımız ile include işlemi başarılı bir şekilde gerçekleşti. Peki burada include ederken yolu belirledik ancak neden index ismi verdik? Bunun nedeni aynı isimli sınıfların çakışmasını önlemek için Namespace kullanırız bilindiği üzere, FuelPHP’de bu nedenle namespace ile bu sorunun önüne geçer, ancak biz sınıfımıza namespace tanımlamadığımız için direk sınıf ismini yazdık.

Controller dosyamızda sınıfımızı kullanmamız için gereken tek şey;

Umarım yararlı olmuştur, bir sonraki fuelphp yazımızda görüşmek üzere..