Merhaba @_slm_ Arkadaşım ve Diğerleri...
Bildiğim kadarı ile sizde PHP'de yenisiniz. ve coğu fonksiyonlar hakkında yeterli bilgiye sahhip değilsiniz.
Şimdi arkadaşlarımız yeteri kadar yardımcı olmuşlar sana.
Gerçekten PHP Öğrenme gayretini insanlara gösterebilmen için insanlara fonksiyonların işlevi hakkında sorular sormalısın. (Burayı bir okul gibi düşün çekinmeen sor)
Şimdi Bu Konuyu durup dururken neden açtım?
Aslında durup sururken değil dreck bu başlıktaki konumuz ile ilgili.
Eğer sen (sadece sana değil yeni başlamış bütün arkadaşlarımız için soyluuyorum) Önceden bu
mysql_num_rows ,
COUNT()ve
mysql_fetch_(X) Hakkında bilgi sahibi olsaydın
öneriler üzerine değil bilgin üzerine işini yapardın.
(*ilk)Ok, sen yenisin ve tabiiki bilgi üzerine iş yapacaksın ilk etapta.
Ama sen bu fonksiyonlardan hangisinin
Neden?,
Nerde? Hangi Şartlarda,
Hangi Zamanda? ve Hangi Yoğunlukta? Kullanıldığını sormayıp bu şekilde devam edersen... hep ve hep ilk etapta kalmaya mahkumsun bkz :
(*ilk).
Şunu demek istiyorum...
Mesela bu verilen 2 örnekte
duruma göre 2'side birbirinden Performanslıdır.
Pekii Sordunmu bu
duruma göre nedir?
Sormadın ve bilmiyorsun..
ben sana (bkz :
*ilk) bir adım orta etaba ilerlemen için yardımcı olayım.
Şimdi ilk verilen örnekte
mysql_num_rows fonksiyonu var.
ikinci Örnekte ise mysql'in kendi betiği olan COUNT() ve PHP'nin mysql_fetch(X)i var dedik.
Bu arada şunuda belirteyim mysql_fetch'lerin yanına habire X koymamın sebebi şudur :
mysql_fetch_array, mysql_fetch_assoc, mysql_fetch_object vs vs.. olmasıdır.
Şimdi asıl konuya gelirsek...
Soru 1 : 1. Örnek yani mysql_num_rows nedir? nasıl çalışır?, Çalışırken Performansı N'asıl Etkiler?
Cevap 1 : mysql_num_rows PHP'nin kendi fonksiyonu olup, belirtilen tablodaki satırların sayısını bize verir. Çalışma Performasına gelelim şimdi. En önemli kısım budur.
Verileri satır satır hepsini saydıktan sonra bize toplamını verir.
------------------------------------------------------------
Soru 2. : Pekii bu mysql'in betiği olan COUNT() ve PHP'nin Fonk. Olan mysql_fetch(X). bunlar nedir nasıl çalışır hangi durumlarda kullanmalıyız?
Cevap 2. : COUNT(), aynı şekilde mysql_num_rows gibi bize satır sayısını verir.
Mera etmeyin count'ta aynı mysql_num_rows gibi tek tek satır arıyor... ama farklı bir yapı ile. burada mysql_num_rowstan daha performanslı diyebiliriz.
Ama... Araya mysql_fetch girdimi ve verileriniz sadece
5 tane ise burada mysql_num_rows bu COUNT() ve onunla kullanılan Fetch'i 10 kata katlar cebine bile koyar
İşin özü şudur; Eğer tablonda 100,000,000,000 (giderde gider) veri varsa burada kesinlikle
COUNT() kullan
Ama Eğer Tablonda
1 ile 1000 arası kayıt varsa Kesinlikle
mysql_num_rows kullan.
Evet.. _slm_ kardeşim. Umarım ne demek istediğimi anlamışsındır.
Sakın olaki onayladğın birşeyi araştırmadan uygulama.
Yoksa ilerde Programlamaya olan şevkin sende göreceksinki bi yerden sonra nefrete donuşmuş.
Kolay Gelsin.
Semih VURAL.