首页  >  文章  >  后端开发  >  php怎么去掉数组中的字符串

php怎么去掉数组中的字符串

PHPz
PHPz原创
2023-04-26 09:14:59665浏览

在PHP中,我们经常需要对数组进行操作。其中一个常见的操作是去掉数组中的字符串。本文将介绍如何使用PHP中的函数和方法来实现该操作。

一、使用函数array_filter()

函数array_filter()是PHP中的一个内置函数,可以从数组中去掉一些值。它的使用方法如下:

array_filter(array $input, callable $callback = "?"): array

其中,参数$input是需要处理的数组,参数$callback是一个可选的回调函数,用于确定哪些数组元素被保留。

下面是一个例子:

$my_array = [1, 2, 'hello', 'world'];

$filtered_array = array_filter($my_array, function($element) {
    return (!is_string($element)); //返回true表示要保留该元素,返回false表示要去掉该元素
});

print_r($filtered_array); //输出:Array ( [0] => 1 [1] => 2 )

在上面的例子中, $filtered_array中只包含了整数元素1和2。

二、使用函数array_map()

函数array_map()也是一个PHP内置函数,它可以将一个数组转换成另一个数组,同时可以对其中的每个元素进行自定义操作。使用array_map()可以将一个数组中的字符串去掉,具体方法如下:

array_map(callable $callback , array $array , array ...$arrays): array

其中,参数$callback是一个回调函数,用于对数组中的每个元素进行操作,参数$array是待处理的数组,参数$arrays是可选的其他数组。

以下是一个例子:

$my_array = [1, 2, 'hello', 'world'];

$filtered_array = array_map(function($element) {
    if(is_string($element)) { //如果是字符串,则返回null,表示要去掉该元素
        return null;
    } else { //否则返回元素本身
        return $element;
    }
}, $my_array);

print_r($filtered_array); //输出:Array ( [0] => 1 [1] => 2 [2] => [3] => )

在上面的例子中, $filtered_array中只包含了整数元素1和2。

三、使用array_intersect()

函数array_intersect()用于比较两个或多个数组,返回一个包含所有数组中都存在的元素的数组。我们可以使用该函数去掉数组中的字符串。

以下是一个例子:

$my_array = [1, 2, 'hello', 'world'];

$filtered_array = array_intersect($my_array, array_filter($my_array, 'is_int'));

print_r($filtered_array); //输出:Array ( [0] => 1 [1] => 2 )

在上面的例子中, $filtered_array中包含了不包含任何字符串的整数元素1和2。

总结

在PHP中,我们可以使用多种方法去掉数组中的字符串。本文介绍了一些常用的方法,包括函数array_filter(),函数array_map()和函数array_intersect()。使用这些函数可以帮助我们更方便地进行数组操作。

以上是php怎么去掉数组中的字符串的详细内容。更多信息请关注PHP中文网其他相关文章!

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