Fra array til annen array?

clinton4

Medlem
Hei,

Jeg har denne arrayen:

Array
(
[fil1.php] => navn1
[fil2.php] => navn2
[fil3.php] => navn3
[fil4.php] => navn4
)

Så trenger jeg å gjøre den om til følgende:

Array
(
'optvalue1' => array( 'fil1.php' => 'navn1' ),
'optvalue2' => array( 'fil2.php' => 'navn2' ),
'optvalue3' => array( 'fil3.php' => 'navn3' ),
'optvalue4' => array( 'fil4.php' => 'navn4' ),
)

Og det står helt stille for meg. Noen som kan hjelpe?
 

adeneo

Medlem
Det finnes haugevis med fancy PHP funksjoner for å bygge og endre arrays, men det enkleste er en enkel loop.

Tar høyde for et gyldig array først :

PHP:
$arr = array(
    '[fil1.php]' => 'navn1',
    '[fil2.php]' => 'navn2',
    '[fil3.php]' => 'navn3',
    '[fil4.php]' => 'navn4'
);

so trenger vi et nytt array, og en loop til å dytte ting inn i det arrayet :

PHP:
$arr2 = array();

foreach ($arr as $k => $v) {
    $n = substr($v, -1); // hent det siste tallet i "navn*"
    $arr2['optvalue'+$n] = array(trim($k, '[]') => $v); // dytt inn i $arr2
}
 
Topp