首页 >后端开发 >PHP问题 >PHP 如何将数组去掉键值?

PHP 如何将数组去掉键值?

Guanhui
Guanhui原创
2020-06-10 17:54:274306浏览

PHP 如何将数组去掉键值?

PHP 如何将数组去掉键值?

在PHP中可以使用“array_values()”函数将数组去掉键值,该函数会返回数组中所有的值,其语法是“array_values(array) ”,其参数array表示要操作的数组,返回值为含所有值的索引数组。

示例代码

<?php
$array = array("size" => "XL", "color" => "gold");
print_r(array_values($array));
?>

以上例程会输出:

Array
(
    [0] => XL
    [1] => gold
)
<?php
/**
* Get all values from specific key in a multidimensional array
*
* @param $key string
* @param $arr array
* @return null|string|array
*/
function array_value_recursive($key, array $arr){
    $val = array();
    array_walk_recursive($arr, function($v, $k) use($key, &$val){
        if($k == $key) array_push($val, $v);
    });
    return count($val) > 1 ? $val : array_pop($val);
}

$arr = array(
    &#39;foo&#39; => &#39;foo&#39;,
    &#39;bar&#39; => array(
        &#39;baz&#39; => &#39;baz&#39;,
        &#39;candy&#39; => &#39;candy&#39;,
        &#39;vegetable&#39; => array(
            &#39;carrot&#39; => &#39;carrot&#39;,
        )
    ),
    &#39;vegetable&#39; => array(
        &#39;carrot&#39; => &#39;carrot2&#39;,
    ),
    &#39;fruits&#39; => &#39;fruits&#39;,
);

var_dump(array_value_recursive(&#39;carrot&#39;, $arr)); // array(2) { [0]=> string(6) "carrot" [1]=> string(7) "carrot2" }
var_dump(array_value_recursive(&#39;apple&#39;, $arr)); // null
var_dump(array_value_recursive(&#39;baz&#39;, $arr)); // string(3) "baz"
var_dump(array_value_recursive(&#39;candy&#39;, $arr)); // string(5) "candy"
var_dump(array_value_recursive(&#39;pear&#39;, $arr)); // null
?>

推荐教程:《PHP

以上是PHP 如何将数组去掉键值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn