【问题标题】:Search words in PHP Array在 PHP 数组中搜索单词
【发布时间】:2015-01-29 01:39:57
【问题描述】:

我想在 PHP 数组中搜索,值是从表中获取的;

例如 string 是表中的一个字段;

字符串值是:

1st Value :- Hello my name is harkesh 
2nd Value :- Last name is Chauhan

while($data = mysql_fetch_array($query))
{
$array[] = $data['string']
}

现在数组正在提取完整的字符串值,但现在我想在 $array[]; 中搜索特定单词

例如

如果我输入“姓氏”,它应该显示第二个值“姓氏是 Chauhan”,如果我输入“名字”,它应该显示两个值,因为它们都包含“名字”

如何实现..谢谢

【问题讨论】:

  • 在 mysql 查询中使用 LIKE 我可能是更好的方法
  • if (strpos($data['string'], 'name') !== false) ..
  • 谢谢你让我开心

标签: php arrays search


【解决方案1】:

可以使用带有preg_grep() function 的正则表达式来搜索值:

print_r(preg_grep('~\bLast name\b~i', $array));

数组 ( 1 => 第二个值:- 姓是 Chauhan )

\b 匹配 word boundary;与i (PCRE_CASELESS)flag一起使用

Test at eval.in; SO Regex FAQ 了解更多正则表达式信息

【讨论】:

    猜你喜欢
    • 2019-12-29
    • 1970-01-01
    • 1970-01-01
    • 2019-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多