tema sınıfı.

alicilinAli Fırat Güler

herkese iyi geceler. bir kurumsal portal geliştiriyorum. Bu portal tema sistemli.

Kendi tema sınıfımı kendim yazdım. Herşey iyi güzel hoş fakat bir kaç sorum olcaktı.

Şimdi öncelikle temasınıfımdaki mantık şu şekilde

$tema->degistir("{baslik}","$baslik"); çalışma şekli bu şekilde yani tema dosyasındaki {baslik} etiketi yerine $baslik değişkenindeki değeri koyuyor. Ancak iş döngülere gelince tabi işler değişiyor. bende bu sorunu şu şekilde çözdüm. Döngü dönerken her dönüşteki değeri bir diziye aktarıyorum örn:

while(falan){

işlemler...

$dizi[]=$sonuc;

}

ve sonucuda diziye topladıktan sonra $dizi dizisini join("\n",$dizi); şeklinde tema etiketi ile değiştiriyorum. Bir sorun yok. Fakat performans açısından sizce ne derece iyi ?

2. sorumda şu olcaktı. Şimdi temanın herhangi bir yerinde bir kategoriden 5 tane konu çekmek istenildiğinde {kat=1-sablon=haber-limit=5} şeklinde kod yazması lazım Bu kodda 1 id numaralı kategoriden haber adlı tema şablonunu kullanarak 5 tane makale çekiyor. buraya kadarda sorun yok. Zaten bunu yapmasını preg_replace ile sağlıyorum Preg replace ile bu kodun 1,haber,5 bu noktalarını çekip file_get_content() ile makale.php adında bir dosyaya yönlendirip makaleleri o dosyaya çektiriyorum

yani o kodun sonucunda makale.php?id=1&sablon=haber&limit=5 şeklinde olmuş oluyor ve bu makale.php dosyası makaleleri çekiyor bende file_get_contents ile çekiyorum ve sonuc olarak tema etiket kodunu yerine çekilen bilgiyi koymuş oluyorum. Peki bu olayın performansı sizce ne derece iyidir.

yani kendi hostundan bir dosya okumak sizce phpyi kasarmı ? file_get_contents yarine bir fonksiyon yazarak konuları başka bir php dosyasına ihtiyaç olmadan çekmek dahamı hızlı olur ?

NOT: Eğer bu mesajdan bişey anlamadıysanız kusuruma bakmayın 3 gündür kafayı yedim smiley

2011-11-01 01:19:13

Php

yusuefYusuf PolatAvatar

Bazı kesimlere göre tpl mantığıda denilen bu yöntem oldukça hızlı ama bana sorarsan yavaş. Basit bir site yapıyor olsan ki sen portal yazıyorum diyorsun, çok fazla içerik olduğundan replace etmen gereken içerik çok fazla olacak ve optimizasyonunu iyi ayarlayamazsan performans düşüklüğü yaşarsın. Bu işlemleri yaparken cache tutmalı ve minimum düzeyde sorgu ile çalışmalısın ki sistemin performansı iyi olsun.

Bu şekilde çalışacaksan smarty'i bir incele. Bu konuda en iyisi.

2011-12-07 22:46:30 Edit:2011-12-07 22:48:14

php

alicilinAli Fırat Güler

Haklısınız. Dediğiniz gibi saf php ile ekrana basmak varken bunu bir diziye aktarıpta bu diziyi bir kod ile değiştirip ekrana basmak arasında oldukça hız farkı olur. özelliklede büyük sistemlerde kendisini belli eder. yanlız yaptığım kurumsal portal olduğundan dolayı çok hit gelecek sistemlerde kullanılmaz zaten hocam. benim sorduğum şuydu;

{kat=1-sablon=haber-limit=5}

temada kullanılan  kod dediğim gibi herhangi bir yerde haber adlı tema şablonunu kullanarak 1 id numaralı kategoriden 5 tane haber çekiyor. bunu yapmanın iki yolu var. birincisi bu değerlere göre çıktı veren bir fonksiyon yazmak. 2. olarakta bu çıktıyı veren ayrı bir sayfa yazıp çıktısını file_get_content ile almak. Sizinde görüşlerinizi alayım dedim üstad. Ben fonksiyondan yanayım. siz ne dersiniz bu duruma ?

2011-12-07 23:31:39

Edit:

phpkodlari.com © 2009 Herkes Php öğrenecek
Eglence ve Oyun: Gamikro