Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Poprawność według OOP
Bora
post
Post #1





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 15.06.2003

Ostrzeżenie: (0%)
-----


z OOP jestem raczkujący napisałem klase okórej cześć zamieszczam poniżej. Znajdują sie tam 2 podobne funkcje, która z nich jest poprawna (chodzi o zapis zgodny z ideą OOP);
ps obie działąją poprawnie przy czym 2ga jest niewiele szybsza (testowane w pętli 1000 razy)

[php:1:2b899e2e72]<?php
class Db
{
function num_rows1($tabela,$pole,$warunek="") {
if ($warunek=="") {
$this->where = "";
} else {
$this->where = " WHERE ".$warunek;
}
$this->zapytanie = "SELECT COUNT(".$pole.") FROM ".$tabela.$this->where;
$this->rezultat = mysql_query($this->zapytanie);
return mysql_num_rows($this->rezultat);
}

function num_rows2($tabela,$pole,$warunek="") {
if ($warunek=="") {
$where = "";
} else {
$where = " WHERE ".$warunek;
}
$zapytanie = "SELECT COUNT(".$pole.") FROM ".$tabela.$where;
$rezultat = mysql_query($zapytanie);
return mysql_num_rows($rezultat);
}
}
?>[/php:1:2b899e2e72]
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Nalfein][WR
post
Post #2





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 22.04.2003
Skąd: Żory / K-ce

Ostrzeżenie: (0%)
-----


Cytat
Nalfein][WR co do mojej klasy jak dla mnie wydaje sie dobra, zlicza poprawnie przy czym działa szybciej niż:

[php:1:78c578bd18]<?php
$zapytanie = "SELECT * FROM ".$tabela.$where;
$rezultat = mysql_query($zapytanie);
return mysql_num_rows($rezultat);
?>[/php:1:78c578bd18]


Bo tu pobierasz wszystkie rekordy. Możesz tak:

[php:1:78c578bd18]<?php
$zapytanie = "SELECT COUNT(*) FROM ".$tabela.$where;
$rezultat = mysql_query($zapytanie);
return mysql_num_rows($rezultat);
?>[/php:1:78c578bd18]

i będzie działało szybciej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 02:14