Kategori: PHP

  • PHP ile Trait ve Interface Kullanımları

    Nesne yönelimli programlama yaparken kalıtım ve tekrar kullanım başlıkları önemli rol oynuyor. PHP üzerinde sınıflar tanımlanırken kullanabileceğimiz konseptlerden birkaçını aşağıda karşılaştırarak anlatmaya çalışacağım. Trait Pek çok sınıfta kullanma durumumuz olabilecek method ve değerleri bir trait içine toplayarak bunu ilgili sınıflara uygulanabilir. Bir sınıfa birden fazla trait uygulanabilir. Uygulanırken use anahtar kelimesi kullanılır. Trait içinde tanımlanmış…

  • PHP’de Arrow Function ve Dizi Fonksiyonlarında Kullanımı

    PhP 7.4 ile fonksiyon tanımlamanın yeni ve kısa bir yöntemi geldi. Tek satır ile => sembollerini kullanarak bir fonksiyon tanımlayabiliriz. Normal fonksiyonlardan ayıran en önemli özelliği dış alandaki (outer scope) değişkenleri de kullanmamıza imkan verir. Aşağıdaki örnekte indirim oranı fonksiyon içinde tanımlanmadan kullanıldı. Burada dikkat edilmesi gereken bir nokta da dış alandaki değişken fonksiyon içinde…

  • Laravel Eloquent Kütüphanesinde Eager ve Lazy Loading Farkı

    Eloquent ile tablolar arasında ilişkiler kurabiliyoruz. User(kişi) tablosuna bağlı Post(makale/yazı) tablosu bu Post tablosuna bağlı Comment(yorum) tablosu gibi. Bu tablolardan aralarındaki ilişkileri kullanarak veri okurken dikkat etmemiz gereken bazı durumlar var. Eager(aç gözlü) ya da Lazy (tembel) yükleme yöntemlerinden birini seçmemiz gerekir. Karmaşıklık ya da okuduğumuz verinin derinliği arttıkça bu tercih çok önemli olacaktır. Bu…

  • Laravel’de Data Transfer Objects Kullanımı

    Yazılım geliştirmesi yapılan bir projede iş mantığı çok karmaşık olmasa da veri kullanımı ve transferi çok karmaşıklaşabiliyor. Böyle durumlar için alacağımız önlemlerden biri de veri transfer nesneleri (DTO) kullanmak olabilir. veri transfer nesneleri – data transfer objects – dto DTO’lar basit veri kapsayıcı – taşıyıcı sınıflardır. İçlerinde veriyi değiştirmeye manipüle etmeye yarayan mantık bulunmaz fakat…

  • PHP 8 ile Gelen Özellikler

    PHP 8 sürümü ile bu dilde olmayan pek çok önemli özellik eklenmiş oldu. Bunlardan bazılarını aşağıda listeledim. Union Types – Birleşik tipler Bir fonksiyonun dönen değerin ya da aldığı parametrenin tipi tanımlarken yani type casting yaparken artık bir kaç değeri birleştirebiliriz. Named Arguments – Adlandırılmış Değişkenler Bir fonksiyon kullanılırken verilecek parametreleri adına göre eşitleyerek verebiliriz.…

  • Eloquent ORM Kütüphanesinde get() ve first() Farkları

    Özet get() metodu sorguyu çalıştırır ve bir Collection döner yani içerisinde sorgu sonucunda kaç satır veri varsa hepsini getirir, first() ise get() gibi sorguyu çalıştırır ve sadece ilk satırı Model ya da stdClass tipinde bir nesne olarak döner. Bir ORM olan Eloquent sayesinde veritabanımızdaki tablolar ile PHP sınıflarımızı rahatlıkla eşleştirip kullanabiliyoruz. Metodları zincirleyerek oluşturduğumuz sorguların…