Mailinglisten-Archive |
Ralf Müller wrote: >>davon möchte ich nur die ersten N Elemente haben. Leider produziert >>array_slice($arr,0,3): >> >>Array ( [0] => >>[1] => >>[2] => 148.4 + >>[3] => >>) >> >>Kennt jemand vielleicht eine Einfachere Möglichkeit, als die Schlüssel und >>die Werte zu getrennt zu 'slicen' und danach wieder zusammen zu bauen. Mir >>erscheint das zu kompliziert. Hätte gedacht es gibt in PHP schon ein >>Funktioen, die Array zerteilt und dabei die Schlüssel - Wert beziehung >>erhält. > > Hab dass jetzt so gelöst: > > { > $k = array_keys($orders); $v = array_values($orders); > $k = array_slice($k,0,3); $v = array_slice($v,0,3); > foreach ( $k as $i => $thisk ) > { > $newOrders[$thisk] = $v[$i]; > } > $orders = $newOrders; > } > > sollte auch mit mehrfachen Werten zurechtkommen, denke ich. > > Geht das auch kürzer? achso, du willst einfach die ersten drei Werte des Arrays haben? ich hatte das irgendwie ganz anders verstanden ... die ersten drei wo was drinne steht ... geth kürzer: ;-) $counter = 0; $new_orders = array(); foreach ( $orders as $key => $val ) { $new_orders[$key] = $val; if ( 3 === ++$counter ) break; } oder: foreach ( array_slice( array_keys($orders), 0, 3) as $key ) { $newOrders[$key] = $orders[$key]; } -- Sebastian Mendel www.sebastianmendel.de www.warzonez.de www.tekkno4u.de www.nofetish.com www.sf.net/projects/phpdatetime www.sf.net/projects/phptimesheet
php::bar PHP Wiki - Listenarchive