+ Cevap Yaz
Toplam 5 sayfadan 1. sayfa 1 2 3 4 5 En SonEn Son
50 sonuçtan 1 ile 10 arası gösteriliyor

Konu: Php kodlarını yazarken dikkat edilmesi gerekenlerden...

  1. #1
    LoS.ToF Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    08/2002
    Yer
    Antalya
    Mesaj
    1,080
    Ceviz Üyesi

    Varsayılan Php kodlarını yazarken dikkat edilmesi gerekenlerden...

    Aslinda ben yeniyim ama bazi eski arkadaslardan edindigin bir kaç bilgiyi buraya sunmayi uygun gördüm.


    1. PHP kodlarinizi yazarken " tirnak isaretini elinizden geldigince kullanmayin çünkü bu sekilde kod daha yavas çalisiyor.

    örnegin :
    $sql = "Select * from uyeler where id = $id";
    daha yavas çalisacaktir çünkü satir içerisinde bir degisken arayacaktir. Fakat:
    $sql = 'Select * From uyeler where id = '.$id;
    dersek PHP degiskenin satirin sonunda oldugunu bileceginden dolayi daha hizli çalisacaktir.

    2. Kod yazarken her zaman için ufak yazin. Çünkü kodlariniz Linux ortaminda sorun çikartabilir. Kedin yasadim çünkü.

    DEFINE('degisken', 'deger');

    seklinde yaptiginiz zaman sorunlar yasabiliyorsunuz.
    define('degisken','deger');
    seklinde kullanmak daha saglikli oluyor.


    simdilik aklima gelenler bunlar.
    Umarim isinize yarar.

  2. #2
    mkarabulut

    Varsayılan

    Bende bi kaç şey yazayım :

    1- eregi,eregi_replace fonksiyonlarının yerine preg_match,preg_replace kullanmak. Çünkü bunlar daha hızlı
    Aynı şekilde sadece belli karakterlere göre string parçalama yapılacaksa split() yerine explode() kullanmak daha hızlı. Split() i sadece regexp içeren durumlarda kullanmak avantajlı..

    2-Bir de son bi şey geçenlerde okumuştum. PHP ciler son versiyonlarda $HTTP_POST_VARS,$HTTP_GET_VARS gibi değişkenlere ek olarak aynı işi yapan $_GET,$_POST gibi değişkenler çıkardılar. şimdi ise resmen desteklenenler bu sonradan çıkan değişkenlermiş, eski değişkenlerde hala destekleniyor ama phpciler bunların kullanımını artık önermiyorlarmış. Belki ilerki bir versiyonda çıkarılabilir anlamına geliyor galiba...

    Neyse şimdlik benden de bu kadar...

  3. #3
    LoS.ToF Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    08/2002
    Yer
    Antalya
    Mesaj
    1,080
    Ceviz Üyesi

    Varsayılan

    aklıma gelmişken

    mysql_fetch_object($query);
    mysql_fetch_array($query);
    mysql_fetch_row($query);

    hızına göre sıraladım. Aklıma gelmişken belirteyim bu arada kişilerin kendi yazdıkları fonksiyonları atmaları için bir bölüm açarsanız sevinirim.
    Beni olağanüstü bir kişi olarak yorumlamayınız. Doğuşumdaki tek olağanüstülük TÜRK olarak dünyaya gelmemdir. M.K.A.

    Why Not: Kişisel Web Güncem

  4. #4
    greenpage Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    07/2002
    Yer
    istanbul
    Mesaj
    90
    Cevizci

    Varsayılan

    Bunlar çok faydalı ve harika bilgiler arkadaşlar biraz daha devam edebilirmiyiz?
    Lütfen çimlere basmayınız.

  5. #5
    mkarabulut

    Varsayılan

    Tam olarak açıklarsan, açılmaması için hiç bir sebep yok...

  6. #6
    mkarabulut

    Varsayılan

    Bir iki tane
    1- Stringleri mümkün olduğu kadar php dışında ekrana yazdırmak ve echo'yu mümkün olduğu kadar az kullanmak...
    <?
    echo "asasd";
    echo "adasdasd";
    echo "asdasd";
    ?>

    yerine
    <?
    $str="asdasd";
    $str.="assadasd";
    $str.="asdasd";
    echo $str;
    ?>

    veya
    <?
    //php kodları
    ?>
    asdasd
    asdasd
    asdasd
    <?
    //kodlara devam..
    ?>

    2- Olabildiğince sql sorgularını az kullanmak...
    Ve olabildiğince sorgularda JOIN işlemini az kullanmak.

    Ya bununla ilgili bi ingilizce dokuman var,olmazsa onu burda versem mi ?

  7. #7
    mkarabulut

    Varsayılan

    Neyse dosyayı da verelim ... :
    Eklenmiş Dosyalar

  8. #8
    mkarabulut

    Varsayılan

    Birde aklıma bi iki şey daha geldi,madem böyle bir konu açılmış onları da yazayım bari :

    1-mysql_free_result kullanmak:
    $query=mysql_query() kullandıktan sonra mutlaka
    mysql_free_result($query ) ile bellekten artık kullanılmayan şeyleri silin. Burada dikkat edilmesi gereken nokta

    $query=mysql_query("SELECT * FROM tablo1");
    echo mysql_result($query,0,0);
    //başka bir sorgu
    $query=mysql_query("sELECT * FROM tablo2");

    ikinci recordset de query değişkenine gönderilmesine rağmen,ilk recordset mysql_free_result yapılmadığı için onunla ilgili kaynaklar hala bellekte kalmaktadır. Yani aynı değişkeni kullansak bile mysql_free_result kullanmak zorundayız.

    $query=mysql_query("SELECT * FROM tablo1");
    echo mysql_result($query,0,0);
    mysql_free_result($query);
    //başka bir sorgu
    $query=mysql_query("sELECT * FROM tablo2");
    mysql_free_result($query);

    2- mysql_unbuffered_query() kullanmak :
    Eğer veritabanına gönderilen sorgu SELECT ise sorgu sonucu olacağından
    $query=mysql_query()
    ile sonuçları almak gerekir. Ama ya gönderilen sorgu INSERT,UPDATE,DELETE gibi action-query ise ? O zaman sorgu sonucu olmayacağından, mysql'in boşuna sorgu sonucunda buffer'a sonuçları atması bize gereksiz performans kaybına sebep olacaktır. Onun için
    mysql_unbuffered_query("dELETE FROM table");
    kullanmak daha avantajlı olacaktır.
    Enson 27/08/2002 20:30 tarihinde mkarabulut tarafından düzenlenmiştir.

  9. #9
    Mingitau

    Varsayılan

    1- eregi,eregi_replace fonksiyonlarının yerine preg_match,preg_replace kullanmak. Çünkü bunlar daha hızlı
    Ben str_replace daha hızlı diye biliyordum :-)

  10. #10
    mkarabulut

    Varsayılan

    Orjinal mesajı gönderen sniper


    Ben str_replace daha hızlı diye biliyordum :-)
    str_replace() bu fonksiyonların hepsinden hızlıdır ama
    <?
    $str=str_replace("mustafa karabulut","mkarabulut",$str);
    ?>

    şeklinde değişiklikler yapabilirsin. Eğer string içinde ilk üç karakteri rakam olan kelimeleri bul onları şununla dğiştir gibi bir şey yapmak istersen, regexp yani eregi_replace gibi bi şeyler kullanmak zorundasın.

    Ama haklısın düznli ifadelere ihtiyacın yoksa,str_replace daha hızlıdır.

+ Cevap Yaz

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Benzer Konular

  1. yazıların post edilmesi
    By abacigil in forum PHP
    Cevap: 4
    En Son Mesaj: 27/01/2007, 01:54
  2. Div içeriklerinin print edilmesi
    By Darkwave in forum Javascript / DHTML / Ajax
    Cevap: 3
    En Son Mesaj: 29/01/2006, 22:45
  3. alan adı tesil işleminde dikkat edilmesi gerekenler
    By bestprogramci in forum Internet
    Cevap: 4
    En Son Mesaj: 01/09/2005, 17:28
  4. xml'in parse edilmesi
    By bonusiso in forum C#
    Cevap: 5
    En Son Mesaj: 21/07/2005, 07:51
  5. ASP dosyalarının test edilmesi
    By loch00 in forum ASP
    Cevap: 1
    En Son Mesaj: 02/02/2005, 16:27

Bookmarks

Mesaj Yazma Hakları

  • Yeni mesajgöndermezsiniz
  • Cevap yazamazsınız
  • Dosya ekleyemezsiniz
  • Mesajınızı düzenleyemezsiniz