|
| Implode speciel rækker fra alle under-arra~ Fra : Jesper H |
Dato : 09-02-06 20:52 |
|
Hej alle
Jeg leder efter en speciel funktion, som kan gøre noget lignende
følgende:
<?PHP
$test = array(array('navn' => 'Finn', 'alder' => '25'), array('navn' =>
'Sigurd', 'alder' => '32'));
?>
Jeg mangler en funktion (eller en elegant kombination af nogle få),
der minder om implode, men her imploder f.eks. alle 'navn' værdierne
fra under-array'ene:
"Finn, Sigurd"
Jeg kan godt lave noget kode som gør det, men tænkte om der ikke i
forvejen fandtes en færdiglavet elegant funktion til det. Eventuelt en
færdiglavet funktion som tager et multidimentionelt array såsom her
$test, og returnerer et array med indholdet af alle underarrays med en
bestemt key (her 'navn'), så det bliver : array('Finn', 'Sigurd') ,
som jeg så kan implode.
Nogle forslag?
--
Mvh Jesper, http://fdf.dk/landsdel1/
| |
Bent Stigsen (09-02-2006)
| Kommentar Fra : Bent Stigsen |
Dato : 09-02-06 23:40 |
|
Jesper H wrote:
> Hej alle
>
> Jeg leder efter en speciel funktion, som kan gøre noget lignende
> følgende:
>
> <?PHP
> $test = array(array('navn' => 'Finn', 'alder' => '25'), array('navn' =>
> 'Sigurd', 'alder' => '32'));
> ?>
> Jeg mangler en funktion (eller en elegant kombination af nogle få),
> der minder om implode, men her imploder f.eks. alle 'navn' værdierne
> fra under-array'ene:
> "Finn, Sigurd"
>
> Jeg kan godt lave noget kode som gør det, men tænkte om der ikke i
> forvejen fandtes en færdiglavet elegant funktion til det. Eventuelt en
> færdiglavet funktion som tager et multidimentionelt array såsom her
> $test, og returnerer et array med indholdet af alle underarrays med en
> bestemt key (her 'navn'), så det bliver : array('Finn', 'Sigurd') ,
> som jeg så kan implode.
>
> Nogle forslag?
Mmmmmm, arrays.
Den korte måde:...
$res_arr = $test; //kopi af dit array
array_walk($res_arr, create_function('&$v','$v=$v["navn"];'));
Den sviner godt nok lidt med hukommelsen, da den til at starte med
laver en kopi (men det bliver vel frigivet igen). Og det er heller
ikke specielt fejltolerant, så input skal være iorden. Hvis det er et
problem, kan du starte med et tomt array istedet, og flytte værdier over.
/Bent
| |
Jesper H (10-02-2006)
| Kommentar Fra : Jesper H |
Dato : 10-02-06 08:32 |
| | |
|
|