anpera.net https://anpera.dyndns.org/phpbb3/ |
|
Arrays bearbeiten https://anpera.dyndns.org/phpbb3/viewtopic.php?f=34&t=3721 |
Seite 1 von 1 |
Autor: | Setsna [ So 17 Jun, 2007 21:54 ] |
Betreff des Beitrags: | Arrays bearbeiten |
Grüße, Wiedereinmal hat mich ein Arrayproblem ereilt, dessen Lösung vermutlich genau vor mir liegt, sich aber sorgsam in einem Grasbüschel versteckt. Also, folgendes Beispiel Angenommen ich habe folgenden Array $bla = array("1", "2", "3", "4"); und möchte nun jede Zahl mit einem vorher gewählten Multiplikator multiplizieren. Ich hatte mir die Idee ausgemalt, eine Schleife drumherum zu basteln die nach folgendem Prinzip arbeitet: $this->bbcode_second_pass_code('', ' $bla = array("1", "2", "3", "4"); $mod = 0.8; $i=0; do { array_splice($bla, $i,$i+1, "array_slice($bla, $i, $i+1)*$mod"); $i++; } while ($i<4);') Soweit so gut, der Schnipsel wirft zumindest keinen Fehler aus. Das Problem ist nur, dass er auch ansonsten nichts auswirft, ausser "ARRAY", egal auf welche Art ich versuche ihn auszugeben. Nun weiß ich also nichtmal, ob dort oben wirklich geschieht Wiedermal mit Hoffnung auf Hilfe, Setsna |
Autor: | Eliwood [ So 17 Jun, 2007 22:16 ] |
Betreff des Beitrags: | Re: Arrays bearbeiten |
Setsna hat geschrieben: Grüße, Wiedereinmal hat mich ein Arrayproblem ereilt, dessen Lösung vermutlich genau vor mir liegt, sich aber sorgsam in einem Grasbüschel versteckt. Also, folgendes Beispiel Angenommen ich habe folgenden Array $bla = array("1", "2", "3", "4"); und möchte nun jede Zahl mit einem vorher gewählten Multiplikator multiplizieren. Ich hatte mir die Idee ausgemalt, eine Schleife drumherum zu basteln die nach folgendem Prinzip arbeitet: $this->bbcode_second_pass_code('', ' $bla = array("1", "2", "3", "4"); $mod = 0.8; $i=0; do { array_splice($bla, $i,$i+1, "array_slice($bla, $i, $i+1)*$mod"); $i++; } while ($i<4);') Soweit so gut, der Schnipsel wirft zumindest keinen Fehler aus. Das Problem ist nur, dass er auch ansonsten nichts auswirft, ausser "ARRAY", egal auf welche Art ich versuche ihn auszugeben. Nun weiß ich also nichtmal, ob dort oben wirklich geschieht Wiedermal mit Hoffnung auf Hilfe, Setsna Ungetestet, müsste aber gehen, solange der Multiplikator der gleiche ist: [php]function array_modifier($val) { return intval($val) * 0.8; } $newarray = array_map("array_modifier", array('4', '12', '15', '10')); var_dump($newarray);[/php] Ausgabe: $this->bbcode_second_pass_code('', 'array(4) { [0]=> float(3.2) [1]=> float(9.6) [2]=> float(12) [3]=> float(8) } ') Ansonsten täte es doch auch ein einfacher "foreach($array as $key => $val) { $array[$key] = $val+0.8; }" |
Seite 1 von 1 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |