![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 270 Pomógł: 0 Dołączył: 15.06.2003 Ostrzeżenie: (0%) ![]() ![]() |
mam takie 2 funkcje:
[php:1:19a70f9307]<?php function pierwsza(){ global $errorString; $smarty = new Smarty; $smarty->compile_check = true; $smarty->debugging = true; $smarty->caching = false; $zapytanie = "SELECT * FROM tabela"; $wykonaj = mysql_query ($zapytanie); while($wiersz=mysql_fetch_assoc($wykonaj)) { $id = $wiersz['id']; $zapyt = "SELECT * FROMtabela2 WHERE id='$id'"; $wyk = mysql_query ($zapyt); $ile = 0; while($wierszy=mysql_fetch_assoc($wyk)) { $ile = $ile + $wierszy['ile']; } $wiersz['ile'] = $ile; $out[] = $wiersz; } $smarty->assign('begin', $out); $smarty->display('index.tpl'); } ?>[/php:1:19a70f9307] Oraz taką: [php:1:19a70f9307]<?php function druga(){ global $errorString, $db; $smarty = new Smarty; $smarty->compile_check = true; $smarty->debugging = true; $smarty->caching = false; $zapytanie = "SELECT * FROM tabela"; $ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; $wiersz = $db->Execute($zapytanie); if ($wiersz === false) die("failed"); while (!$wiersz->EOF) { $id = $wiersz->fields['id']; $zapyt = "SELECT * FROM tabela2 WHERE id='$id'"; $ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; $wierszy = $db->Execute($zapyt); if ($wierszy === false) die("failed"); $ile = 0; while(!$wierszy->EOF) { $ile = $ile + $wierszy->fields['ile'] $wierszy->MoveNext(); } $wiersz->fields['ile'] = $ile; $out[] = $wiersz->fields; $wiersz->MoveNext(); } $smarty->assign('begin', $out); $smarty->display('index.tpl'); } ?>[/php:1:19a70f9307] Smarty debbuger pokazuje mi czas : funkcja pierwsza: Kod index.tpl (0.00914) (total)
header.tpl (0.00480) footer.tpl (0.00112) funkcja druga: Kod index.tpl (0.02621) (total)
header.tpl (0.01490) footer.tpl (0.00113) pliki *.tpl wyglądają tak samo w obu przypadkach i tablica $out także. czy zawsze używanie ADOdb powoduje wolniejszą prace (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? Albo jak to zooptymalizować w ADOdb (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) |
|
|
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
a jak byś chciał ? Przecież adodb robi to samo co drugi kod, tylko przerabia to jeszcze samemu. AdoDB jest warstwą pośrednią! Nigdy nie będzie szybzse, bo w gruncie rzeczy to ona tylko przenosi twój kod do swoich klas - ale i tak uważam, że warto ze względu na przenośność.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 270 Pomógł: 0 Dołączył: 15.06.2003 Ostrzeżenie: (0%) ![]() ![]() |
czy korzystanie z ob_start i ob_end_flush może przyśpieszyć wykonywanie (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
|
|
|
![]()
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Nie sadze, przeciez nic w tym kodzie nie wyswietlasz... (nie liczac Smarty, ale to masz w obu przypadkach)
Przyspieszyc dzialanie AdoDB moze np. jego mechanizm cache'ujacy. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 270 Pomógł: 0 Dołączył: 15.06.2003 Ostrzeżenie: (0%) ![]() ![]() |
hmm
czyli jeżeli nie zależy mi na szybkości a nie na integralności z innymi bazami danych to nie ma sensu używać Adodb (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 223 Pomógł: 0 Dołączył: 13.01.2003 Skąd: 3rd ball of mud behind a big ball of burning gas Ostrzeżenie: (0%) ![]() ![]() |
Cytat hmm
czyli jeżeli nie zależy mi na szybkości a nie na integralności z innymi bazami danych to nie ma sensu używać Adodb (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Według mnie tak właśnie powinno się zrobić choć grzechem nie byłoby stworzenie własnej prostej klasy obsługi bazy danych. Pozdrawiam. |
|
|
![]()
Post
#7
|
|
Grupa: Zarząd Postów: 1 512 Pomógł: 2 Dołączył: 22.04.2002 Skąd: Koszalin ![]() |
wszystko zalezy od tego co jest u Ciebie priorytetem
sam sobie odpowiedziales na to pytanie |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 20:26 |