* štogod

* * * ex Life Theater

$args = func_num_args() ? func_get_args() : array('Anonymous');

novikorisnik | 03 Avgust, 2007 23:31

izvor: DPT:PHP5 Overloading

$args = func_num_args() ? func_get_args() : array('Anonymous');

Interesantno je da func_num_args vraća broj argumenata koji su prosleđeni funkciji, dakle integer, dok uslovni ternarni operator ?: traži logičku vrednost izraza (boolean) na osnovu koje odlučuje hoće li izvršiti drugi ili treći izraz. Trik je što se primenjuje automatska konverzija tipova i samo nula dobija vrednost false - u ovom slučaju, ako je funkcija pozvana bez ijednog parametra dodeljuje se jednočlani niz s podrazumevanom vrednošću prvog parametra, inače je func_num_args je vratio broj različit od nule što konverzija prevodi u true, pa se dodeljuje niz prosleđenih parametara.

 
Accessible and Valid XHTML 1.0 Strict and CSS
Powered by blog.rs - Design by BalearWeb