php怎么去掉含字符串的数组元素
时间 : 2023-02-16 05:29:01声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

PHP是使用最广泛的网页开发语言,有时候我们将会遇到去掉格式化字符串的数组元素的情况,让我们先可以看看怎么去掉含有字符串的数组元素。

首先,我们可以使用array_search()函数,它可以从数组中搜索元素并返回与指定值匹配的索引,示例代码如下:

$delete_str = "delete string";

$array = array("test1", "test2", "test3", "delete string", "test4", "test5");

$key = array_search($delete_str, $array);

if ($key !== false)

{

unset($array[$key]);

}

其次,我们也可以使用array_diff()函数,array_diff()函数用来计算数组的差集,它会返回一个由不在第二个数组中存在的值组成的新数组,示例代码如下:

$delete_str = "delete string";

$array = array("test1", "test2", "test3", "delete string", "test4", "test5");

$delete_arr = array($delete_str);

$result = array_diff($array, $delete_arr);

print_r($result);

最后,我们可以使用array_values()函数,它会从去掉字符串的数组中返回所有的值,示例代码如下:

$delete_str = "delete string";

$array = array("test1", "test2", "test3", "delete string", "test4", "test5");

$values = array_values($array);

for($i=0; $i < count($values); $i++) {

if($values[$i] == $delete_str) {

unset($values[$i]);

}

}

print_r($values);

从上面的代码中我们可以看出去掉含有字符串的数组元素,其实也有多种办法,比如,我们可以使用array_search()函数,array_diff()函数以及array_values()函数。这些办法均有一定的效率。如果需要快速去掉格式化字符串的数组元素,可以根据实际情况,跟据需求,选择合适的办法去操作。

PHP是非常强大的开发语言,它能够快速有效地解决复杂的编程任务。有时候,PHP用户会遇到PHP中某一个数组元素含有某个特定字符串时,要求去掉这种特定字符串。那么,PHP怎么去掉含字符串的数组元素呢?这里有两种方法:

方法一:使用array_filter()函数。array_filter()函数接受一个回调函数作为参数,可以提供一个自定义的函数,调用Foreach把所有元素迭代一遍,判断是否包含此字符串,如果包含,则return FALSE,即过滤掉该元素;

例子:

$arr = array('CN', 'US', 'UK', 'India');

$arr = array_filter($arr, function($value) {

if (strstr($value, 'D')!==false) {

return false;

}

return true;

});

var_dump($arr);

// 输出:array(2) { [0]=> string(2) "CN" [2]=> string(2) "UK" }

方法二:使用preg_grep()函数。preg_grep()函数也接受一个正则表达式,也可以返回匹配成功的元素,不同的是该函数只返回匹配成功的元素,未过滤掉非匹配成功的元素。

例子:

$arr = array('CN', 'US', 'UK', 'India');

$arr = preg_grep('/D/', $arr);

var_dump($arr);

// 输出:array(2) { [1]=> string(2) "US" [3]=> string(5) "India" }

以上就是PHP怎么去掉含字符串的数组元素的手段和例子,希望对PHP程序员有所帮助。