Autor | Zpráva | ||
---|---|---|---|
Numero1990 Profil |
Zdravím,
lze nějak v PHP udělat, aby se mi argument metody automaticky konverzoval na pole? Příklad: Implementace public function getByPropertyList(array $properties, array $values) { ... } Použití $user->getByPropertyList(array('uid', 'age'), array('5', '20')); $user->getByPropertyList((array) 'uid', (array) '20'); // teď to musím řešit takhle $user->getByPropertyList('uid', '20'); // takhle bych to chtěl Jde mi o to, abych nemusel mít 2 implementace getByProperty() a getByPropertyList(). Poznámka Šlo by to řešit tak, že bych ze signatury smazal array, ale pak bych musel parametry v těle metody validovat a to se mi nechce, protože od třídy mohu dědit, tyto metody přetížit a nesměl bych zapomenout napsat na začátek zase validaci zase s exceptionama, atp. Zbytečná duplikace kódu. |
||
Tori Profil |
Numero1990:
A nebylo by potom jednodušší to udělat s jedním parametrem? tj. jednodušší, než muset hlídat pořadí prvků v obou polích public function getByProperties(array $properties) { ... } $user->getByProperties(array('uid' => 5)); $user->getByProperties(array('uid' => 7, 'age' => 130, 'pocetFousu' => 1e8)); |
||
Numero1990 Profil |
#3 · Zasláno: 19. 1. 2013, 12:55:38
Asi ano :)
|
||
Časová prodleva: 11 let
|
0