如何判断某一字符串中是否包含另一个数组中的元素?

number123456 2007-12-24 03:33:27
我有个关键字数组,然后还有一个字符串,我想知道这个字符串中是否包含我这个关键字数组中的某一个元素,请问有没有什么好点的方法?

例如:
$a = array("admin","shop");
$b = "abcdeshop.admin";

我想知道$b中是否包含数组$a中的某一元素.

...全文
1292 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
snake1220 2007-12-24
  • 打赏
  • 举报
回复
$arr=array("1","2","a","b");
$str="fdsafdsafdsafdsafdsa";

foreach ($arr as $key=>$value){
if (eregi($value,$str)){
echo "存在";
}else{
echo "不存在";
}
}


joma925 2007-12-24
  • 打赏
  • 举报
回复
还是用php中的方法解决吧!
if(strpos($b,$a[0])===false)
{
echo "admin不包含在这个字符串中";
}
else
{
echo "true";
}
注意用“===”来比较,因为返回0的时候,意味在字符串开始的地方就搜索到了。
number123456 2007-12-24
  • 打赏
  • 举报
回复
如果我那个$a的关键词量很大是不是会很占资源?会很慢?
Aylazhang 2007-12-24
  • 打赏
  • 举报
回复
$a   =   array("admin","shop");
$b = "abcdeshop.admin";
foreach($a as $v) {
$pos = strpos($b,$v);
if ($pos === false) {
echo "$v: NOT IN\n";
} else {
echo "$v: IN\n";
}
}
西安风影 2007-12-24
  • 打赏
  • 举报
回复
正则很好办
function match()
{
var array = new Array("admin","shop");
var str="abcdeshop.admin";
for(var i=0; i < array.length; i++)
{
string pattern = /array[i]/;
var flag = pattern.test(str);
if(flag)
{
return;
}
}
}

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧