‘PHP’ kategorisi için arşiv.
PHP’de Object Pool
Uğraştığım işlerden birinde, bir web sitesinin birden fazla veritabanından bağlantı çekebilmesi ihtiyacı doğmuştu.
Varsayalım ki, kullanıcı bilgilerini MySQL veritabanından, istatistik bilgilerini PostgreSQL veritabanından çekmemiz gerekiyor.
Bu durumda birden fazla bağlantı kurmamız gerekecek ve singleton patterni işimizi görmeyecek.
Bunun için object pool patternini kullanıyoruz. Aynı singletonda yaptığımız gibi, static create fonksiyonun içine static bir değişken atıyoruz. Ancak bu sefer değişken bir diziyi tutuyor.
Dizinin indexine bağlantının ismini yazarak birden fazla elemana işaretini kolaylaştırıyoruz.
Örneğin;
$connection1 = Connection::create("mysql1"); $connection2 = Connection::create("pgsql1");
Bu kod bize birden fazla bağlantıyı aynı anda aynı class üzerinde tutabilme yeteneği verecek.
Kodun başka bir yerinde "pgsql1" bağlantısını almak istediğimizde daha önce oluşturulan classı alabiliyor olacağız.
PHP ve XCache ile resimleri tampona almak
Üzerinde bir kaç gündür çalıştığım bir konu hakkında yazacağım.
Öncelikle "XCache ne demek, tampon ne demek ?" diyenler; bu yazıya hazırlık olarak yazdığım, önceki yazımı okusunlar. "PHP nedir ?" diyenlere ise sözüm yok ![]()
Yazının tamamını okuyun »
PHP ve XCache
Uzun zamandır yazacak konu ve zaman bulamadığımdan yazmıyordum, lakin üzerinde çalıştığım bir uygulamada, resimleri bellekte tutmak zorunda kaldıktan sonra, yazmamaya daha fazla direnemedim.
Sayfada gösterilecek resimleri dinamik olarak çalışma anında üretmem gerekiyordu, ancak bu işin çok fazla işlemci gücü harcamasına sebep olacağını düşünerek tedirgin oluyordum. Daha sonra aklıma, bunları bir kere oluşturup, belirli bir süre bellekte tutup, kullanıcıya bellekten vermek geldi. Bir tamponlama uygulaması araken, Mehmet Şamlı'nın kitabında XCache konusunu gördüm.
Yazının tamamını okuyun »
Değişken Atamaları Üzerine
$a = $b;
PHP'de değişkenler birbirlerine atanırken 2 şekilde atanır;
1- Değişkeni kopyalayıp atanan değişkene yazmak. (Pass by Value)
2- Değişkenin sadece referansını kopyalamak. (Pass by Reference)
Bu çoğu OOP destekleyen dilde bu şekildedir.
Yazının tamamını okuyun »
PHP’de nesnenin referansını döndüren fonksiyonlar
Bugün basit ama yararlı örnek hazırlayacağım.
Classlarımızın herhangi bir değer döndürmeyen fonksiyonları nesnenin kendi referansını döndürecek. Böylece kodlarımızın bir miktar kısalmasını ve anlaşılabilirliğinin artmasını sağlayabiliriz. Yazının tamamını okuyun »
PHP’de singleton class
Java, c# ve diğer dillerin en büyük avantajı, o dillerin özelliklerini iyi kullanabilen geliştiricilere sahip olması. Ancak PHP'de, özellikle Türkiye'de geliştiriciler genellikle sonuç odaklı çalışıyorlar. Doğruluğu projeden projeye değişir ancak ben PHP'nin özelliklerinin tam olarak bilinmesinden yanayım.
Bu yazımda PHP OOP'yi iyi bilen arkadaşlara PHP'de singleton classların nasıl oluşturulabileceğini anlatacağım.
Yazının tamamını okuyun »