URL: https://www.overclockers.at/coding-stuff/php_array_frage_176876/page_1 - zur Vollversion wechseln!
ich "starte" ein array mit
$var = array();
jetzt kommen mehrere if's, in denen das Array ergänzt wird. Ich bin mir jetzt etwas unsicher, kann ich das dann eh jeweils so ergänzen?
$var .= array('schluessel' => 'wert');
tia
wieso anhängen?
wenn der schlüssel (eigentlich index) erhöht wird, wird ja das array automatisch größer oder?
bitte nicht schlagen wenns nicht stimmt 
entweder du identifizierst den eintrag anhand des schlüssels, wie hackman schon erwähnt hat, oder du fügst einen neuen eintrag per fortlaufender nummer hinzu. das würde dann so aussehen:
$var[] = array('whatsoever' => 1338);
das ist ein rein assoziatives Array.
soll am Ende etwa so aussehen
Code:array ('schluessel1' => 'wert1', 'schluessel2' => 'wert2', 'schluessel3' => 'wert3')
Code:$a = array(); if ($a==true) { $a .= array ('schluessel1' => 'wert1', 'schluessel2' => 'wert2',); } if ($b==true) { $a .= array ('schluessel1' => 'wert1', 'schluessel2' => 'wert2',); }
sollen sich die schlüssel überschreiben? wenn ja, dann brauchst du array_merge(). aber insgesamt finde ich deine angaben etwas seltsam.
ups, da habe ich mich mit c/p vertan. Die Schlüsseln sind alle verschieden und sollen sich nicht überschreiben. Hätte eigentlich so aussehen sollen:
Code:$a = array(); if ($a==true) { $a .= array ('schluessel1' => 'wert1', 'schluessel2' => 'wert2',); } if ($b==true) { $a .= array ('schluessel3' => 'wert3', 'schluessel4' => 'wert4',); }
dennoch: array_merge() :shake:
Code:$a = array(); if ($a==true) { $a = array_merge($a,array ('schluessel1' => 'wert1', 'schluessel2' => 'wert2')); } if ($b==true) { $a = array_merge($a,array ('schluessel3' => 'wert3', 'schluessel4' => 'wert4')); }
thx, also kann man Array's nicht so einfach wie Strings zusammenhängen.
oh doch.. aber nicht wie strings.
$a = $a1 + $a2;
$a += $a1;
ich benutze dennoch immer array_merge(). wahrscheinlich eine schlechte angewohnheit von mir 
ah, super, danke dir 
also zunächst mal zu den arrays: so wie ihr das anschreibts, machts ihr mehrdimensionale arrays, das würde klarerweise das abrufen etc. um einiges schwerer machen 
$a = array();
$a["key"] = "value"; <-- korrekte schreibweise
weiters noch so zum code dazu
if($a==true) kannst da sparen
if($a) { .... } is korrekt 
MFG
Snoopal
es gibt nicht immer nur eine richtige schreibweise
nein (ich weiss, das klingt hartZitat von Snoopalso zunächst mal zu den arrays: so wie ihr das anschreibts, machts ihr mehrdimensionale arrays, das würde klarerweise das abrufen etc. um einiges schwerer machen
)korrekt ist beides, nur war es so nicht im sinne des threadstarters. er wollte mehrere schlüssel gleichzeitig zuweisen.Zitat von Snoop$a = array();
$a["key"] = "value"; <-- korrekte schreibweise
würde mal sagen ersteres dient eher der lesbarkeit, besonders bei php und ohne hungarian notation. bleibt aber dennoch geschmackssache, weil beides ist korrekt!Zitat von Snoopweiters noch so zum code dazu
if($a==true) kannst da sparen
if($a) { .... } is korrekt
Ahoi,
Soda hab mir nochmal durchgelesen, du hast recht 
Wegen den Standards: Es hat einen Grund, warum es diese Schreibweisen gibt: Typo3 programmierer haben von ein paar Jahren damit angefangen sogenannte "standards" mit Begründungen für die Programmierung in ihrem System aufzustellen. Wer sich mit soetwas auseinandersetzt, wird feststellen, dass die Rendertime und die CPU Auslastung herabgesetzt wird, wenn man sich daran hält, da der Parser weniger zu tun hat. Klar kann man jetzt mim Argument kommen: so viele Leute werden das Script nie aufrufen: doch die Frage ist, was is wenn doch ?
Ich hab selbst ein Communityportal mal gemacht und das is inzwischen, auch wenn ich nimma offiziell dabei bin, zu einem der größten Österreichs herangewachsen und glaubs ma, es macht einen Unterschied "wie" du Code schreibst 
Ich weiß lange Rede kurzer Sinn: beides is Richtig und wenn man nicht auf die Performance schaut, ists blunzen 
Ps: und jetzt bitte nicht glauben ich bin ein kleines Kind das heult, weil ihm jemand widerspricht 
ich glaub nur du versuchst den falschen zu belehren 
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026