我在PHP中有一个数组,它可能包含各种类型的元素。如何只保留字符串元素,并删除所有其他元素?
我知道我能做
foreach ($array as $key => $val)
if (gettype($val) !== 'string')
unset($array[$key]);
但我想要一种更简单的方法。
注意:我不关心数组的键以及它们是否保持不变。
您可以使用PHP的函数array_filter()
和is_string()
在一行中完成。
$new = array_filter($array, "is_string");
array_filter()
只保留数组的元素,如果将其传递给回调函数(本例中为is_string()
),则回调返回true。