php一个字符串与数组对比,php怎么快速比对两个数组中存在的相同的值

题目描述

拿到两个数组,第一个数组是$arr1

array(8) {

[0]=>

string(5) "10001"

[1]=>

string(5) "10008"

[2]=>

string(5) "10010"

[3]=>

string(5) "10100"

[4]=>

string(5) "10020"

[5]=>

string(5) "10110"

[6]=>

string(5) "10410"

[7]=>

string(5) "10000"

}

第二个数组是$arr2

array(4) {

[0]=>

string(5) "10000"

[1]=>

string(5) "10003"

[2]=>

string(5) "10004"

[3]=>

string(5) "10006"

}

想请问怎么快速得出arr2中存在于arr1的内容。

题目来源及自己的思路

arr1中可能存在10000到20000多个数组,而arr2中只会存在少数的数组。

我现在尝试了先把arr1转换成字符串得出

$str1=implode(',',$arr1);

string(8)'10001','10008','10010','10100','10020','10110','10410','10000'

$str2=implode(',',$arr2);

string(4)'10000','10003','10004','10006'

然后计算arr2的长度 $arr2

$longth2=count($arr2);

for($i=0;$i

}

但是不知道接下来怎么比对结果了。

想得到的结果是

$arr2中每一个元素存在在$arr1中的位置,数量只会出现一次,没思路了,求教!谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值