Autor Zpráva
final
Profil
Zdravím,
mám otázku, pokiaľ by som si vytvoril nasledujúcu funkciu
function q($select){
    mysql_query($select);
}
a používal ju q("select"), malo by to nejaký zmysel/reakciu v rýchlosti?(či už by to spomalovalo alebo zrýchľovalo alebo by to bolo rovnako rýchle)

ďakujem

Moderátor Joker: Titulek „php funkcia“ nevystihuje podstatu dotazu. Příště zkus prosím vymyslet lepší.
Someone
Profil
ta funkce by měla vypadat spíš

function q($select){
    return mysql_query($select);
}

a zpomalení by bylo dle mého názoru zanedbatelné, ale možná se pletu.
Tori
Profil
final:
Pokud ta funkce nedělá nic jiného (ošetření chybových stavů), tak nemá smysl ji používat. Ale jestli si píšete vlastní DB vrstvu, tak to je něco jiného.
final
Profil
Tori:
no mám aj iné funkcie z db napr. na vrátenie počtu záznamov,vrátenie pola z db a pod..preto som som spravil takú funkciu nech je to už kompletné
Davex
Profil
final:
Jen připomenu, že funkce mysql_* by se měly přestat používat, takže pokud tvoříš nový projekt, tak raději začni s MySQLi nebo PDO. (Nebo nebuduj vlastní framework a použij třeba Dibi.)
final
Profil
Davex:
môžem vedieť prečo by sa mala prestať používať?
Joker
Profil
final:
môžem vedieť prečo by sa mala prestať používať?
Protože celé mysql rozšíření je zavržené (zastaralé) a v některé příští verzi PHP bude úplně odstraněno.
K původnímu dotazu:
S voláním funkce se vždycky pojí nějaká režie, takže obalit funkci další funkcí bude pomalejší. Ale v tomhle případě to zpomalení bude nejspíš minimální ve srovnání s dobou běhu té mysql_query.
V tomhle případě bych jako větší problémy než to potenciální zpomalení viděl odstínění návratové hodnoty (viz [#2] Someone), nevhodně pojmenovaný argument (nemusí to být jen select) a že celkově to nemá moc smysl.

no mám aj iné funkcie z db napr. na vrátenie počtu záznamov,vrátenie pola z db a pod.
A taky to jsou jen obálky pro mysql_* funkce, které existují i pro ty uvedené věci?
final
Profil
Joker:
aha, takže určite bude lepšie pokiaľ zvolím mysqli? dívam sa na dokumentáciu a pripadá mi to takmer rovnaké až na to že je to OOP
A taky to jsou jen obálky pro mysql_* funkce, které existují i pro ty uvedené věci?
áno

a keď už, ktoré je lepšie zvoliť? mysqli alebo pdo? Našiel som skôr že pdo, pretože to podporuje viac vecí
Joker
Profil
final:
pripadá mi to takmer rovnaké až na to že je to OOP
To bude nejspíš záměr, aby se stejné věci v mysqli dělaly podobně jako se dělaly v mysql rozšíření.
Jinak tady v manuálu je porovnání, co které API umí.
final
Profil
Joker:
ďakujem,
vybral som si PDO, aj keď vyzerá zložitejšie ako mysqli
edit: mením názor skúsim mysqli
Lamicz
Profil
Joker:
Od 5.5.0 je už deprecated, tzn. hrozí při E_DEPRECATED chybové hlášky
P.S. Asi to víš... ;)
Joker
Profil
Lamicz:
Od 5.5.0 je už deprecated
Vždyť přesně to píšu v [#7]. Pravda, mohl jsem vedle českého překladu použít i přímo slovo deprecated.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0