Reputation: 10206
If i have an array like this:
array(
"unknownString" => 34, //unknown number
"anotherString" => 32,
"asdf" => 21
);
How can I convert it to this:
array(
array("unknownString", 34),
array("anotherString", 32),
array("asdf", 21)
);
Upvotes: 1
Views: 4295
Reputation: 24661
Here's a slightly different version using array_map
:
function swap($value, $key) {
return array( $key, $value );
}
$arr = array(
"unknownString" => 34, //unknown number
"anotherString" => 32,
"asdf" => 21
);
print_r(array_map('swap', $arr, array_keys($arr)));
Upvotes: 0
Reputation: 59699
This should work:
$array = array(
"unknownString" => 34, //unknown number
"anotherString" => 32,
"asdf" => 21
);
$new_array = array();
foreach( $array as $key => $value) {
$new_array[] = array( $key, $value);
}
If you wanted to, you could also use array_walk()
:
$new_array = array();
array_walk( $array, function( $el, $key) use( &$new_array){
$new_array[] = array( $key, $el);
});
Upvotes: 5