php怎么对字符串求交集

实现步骤:1、利用str_split()函数将两个字符串都转为字符数组,语法“str_split(字符串)”或“str_split(字符串,1)”,会返回两个字符数组;2、使用array_intersect()函数比较两个字符数组求交集,语法“array_intersect(字符数组1,字符数组2)”,会返回包含相同字符元素的交集数组。

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

在php中,可以借助数组,利用str_split()和array_intersect()函数来求两个字符串的交集。

实现步骤:

步骤1:利用str_split()函数将两个字符串都转为字符数组

str_split() 函数把字符串分割到数组中。

str_split(string,length)
参数 描述
string 必需。规定要分割的字符串。
length 可选。规定每个数组元素的长度。默认是 1。

str_split()函数可以把字符串按照指定长度分割,并传入数组中,当分割长度为1时即可转为字符数组。

<?php
header('content-type:text/html;charset=utf-8');   
$str1 = '012hello3456';
$str2 = '24Bhello68';
$arr1 = str_split($str1);
$arr2 = str_split($str2);
echo "字符串1:".$str1;
var_dump($arr1);
echo "字符串2:".$str2;
var_dump($arr2);
?>

会得到两个字符数组。

步骤2:使用array_intersect()函数比较两个字符数组,获得交集

array_intersect():比较数组,返回两个数组的交集(只比较键值)。

array_intersect(array1,array2,array3...);
参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3,… 可选。与第一个数组进行比较的其他数组。

该函数返回的交集数组包含了所有在 array1 中也同时出现在所有其它参数数组中的值。

<?php
header('content-type:text/html;charset=utf-8');   
$str1 = '012hello3456';
$str2 = '24Bhello68';
$arr1 = str_split($str1);
$arr2 = str_split($str2);
echo "两个字符数组:";
var_dump($arr1);
var_dump($arr2);
$result=array_intersect($arr1,$arr2);
echo "交集数组:";
var_dump($result);
?>