在PHP中将数组转换为简单的1级数组

时间:2013-03-27 13:46:37

标签: php arrays

一件简单的事情,但我忘了如何转换

Array
(
    [0] => Array
        (
            [hashcode] => 952316176c1266c7ef1674e790375419
        )

    [1] => Array
        (
            [hashcode] => 5b821a14c98302ac40de3bdd77a37ceq
        )

)

进入这个:

Array (952316176c1266c7ef1674e790375419, 5b821a14c98302ac40de3bdd77a37ceq)

4 个答案:

答案 0 :(得分:5)

我知道这是不成熟的,但由于这很快就会到来,我想我会把它扔出去。从(尚未发布的)PHP 5.5开始,您可以使用array_column()

 $hashcodes = array_column($array, 'hashcode');

答案 1 :(得分:4)

试试这个:

$array  = array(array("test"=>"xcxccx"),array("test"=>"sdfsdfds"));

$result = call_user_func_array('array_merge', array_map("array_values",$array));

echo "<pre>";
print_r($result);

输出:

Array
(
    [0] => xcxccx
    [1] => sdfsdfds
)

答案 2 :(得分:2)

好的循环解决了:)

<?php

$array = array(
    array( 'hashcode' => 'hash' ),  
    array( 'hashcode' => 'hash2' ), 
);

$flat = array();

foreach ( $array as $arr ) {
    $flat[] = $arr['hashcode'];
}

echo "<pre>";

print_r( $flat );

?>

答案 3 :(得分:0)

$source = array(
    array(
        'hashcode' => '952316176c1266c7ef1674e790375419'
    ),
    array(
        'hashcode' => '5b821a14c98302ac40de3bdd77a37ceq'
    )
);

$result = array();
array_walk($source, function($element) use(&$result){
    $result[] = $element['hashcode'];
});

echo '<pre>';
var_dump($result);