phpbar.de logo

Mailinglisten-Archive

[php] Array-Funktionen vs. literale Angabe

[php] Array-Funktionen vs. literale Angabe

Yannik Hampe yannik at cipher-code.de
Son Feb 11 15:54:23 CET 2007



Hannes H. wrote:
> Schönn Sonntag, allerseits!
Hallo Hannes,
> 
> Ich möchte die Gelegenheit nutzen und ein Thema im Zusammenhang mit
> Arrays anbringen, dass mich schon länger beschäftigt:
> 
> Für viele Aufgaben, die die Behandlung von Array betrifft, gibt es in
> PHP zwei Wege:
> 
> a) die spezielle Array-Funktion
>  > z.B. array_push($array, $var);
> b) die "literale" Angabe
>  > z.B. $array[] = $var
> 
> Welche davon ist die bessere Wahl? Gibt es überhaupt intern einen
> Unterschied?

ja, es gibt einen unterschied: a) ist die Verwendung eines
Sprachelements und b) ist die Verwendung einer Funktion. a) ist ca.
doppelt so schnell wie b).
(6ms vs 13ms bei 10000x[] vs 10000x array_push auf meinem Athlon 64
3700+, 2GB DDR2 Win2k php 5.2).

> Und: Ist es ein Vorteil, wenn man eine Array-Variable mit
> $foo = array(); als array initialisiert, bevor man sie so verwendet?

Warning: array_push() [function.array-push]: First argument should be an
array in D:\Proggen\xampp\htdocs\test.php on line 3

Ja. Du solltest deine arrays schon vorher initialisieren mit array().
> 
> Liebe Grüße aus Wien,
> Hannes Halenka

Yannik

php::bar PHP Wiki   -   Listenarchive