使用fatser方法将arsort数组的结果放入数组中


Put in array the result from arsort array with fatser method

如何用更快的方法将arsort数组的结果放入数组中?

我有这个:

Array
(
    [a] => 32389
    [o] => 25534
)

我想要这个:

Array
(
    [1] => array
        ([0] => 'a', 
         [1] => '32389')
    [2] => array
        ([0] => 'o', 
         [1] => '25534')
)

我这样做:

$words = [];
foreach($words as $key=>$value) {
    $words[] = [$k, $v];
}

它是有效的,但在我的arsort之后,我想知道(foreach($words as$key=>$value)是否是执行此任务的更好/更快的方法,或者php是否有其他方法/函数?

易于操作:-

<?php
$data = Array
(
    'a' => 32389,
    'o' => 25534
);
$new_data = array();
foreach ($data as $key=>$value){ // iterate through your original array
    $new_data[] = array($key,$value); // assign key and value array to new array
}
echo "<pre/>";print_r($new_data); // print new array
?>

输出:-https://eval.in/556504

根据你的问题,这是最好的解决方案(其他人也使用相同的东西)。此外,在上述循环中也不存在速度问题。

$a = [ 'a' => 32389, 'o' => 25534 ];
$b = [];
foreach($a as $k => $v) {
    $b[] = [$k, $v];
}
print_r($b);

输出:

Array
(
    [0] => Array
        (
            [0] => a
            [1] => 32389
        )
    [1] => Array
        (
            [0] => o
            [1] => 25534
        )
)
<?php
$array = array('a' => 32389, 'o' => 25534);
$result = array();
foreach($array as $k => $v) {
  $result[] = array($k, $v);
}
var_dump($result);
?>

中的Eval.in

看看这个。

您的代码就快到了。

$words_extract = array(
    'a' => 32389,
    'o' => 25534
);
$words = array();
foreach($words_extract as $k => $v) {
    $words[] = array($k, $v);
}