"badword1", "score" => 400, "type" => -6ren">
gpt4 book ai didi

PHP嵌套数组搜索

转载 作者:行者123 更新时间:2023-12-02 06:41:53 25 4
gpt4 key购买 nike

我是 PHP 新手

我有一个这样的数组

$suspiciousList = array(
array ("word" => "badword1", "score" => 400, "type" => 1),
array ("word" => "badword2", "score" => 250, "type" => 1),
array ("word" => "badword3", "score" => 400, "type" => 1),
array ("word" => "badword4", "score" => 400, "type" => 1));

当用户输入带有空格的单词(如(badw ord1、b adword2 等))或用户可能输入(如(b a d w o r d 1))时,我会遇到问题

如何从数组(字典)中检测或搜索组合?

我的想法是让每个单词都变成一个用空格分隔的数组。

$this->suspiciousPart[] = $word;

我正在编写以下函数

public function deepDetect2() {
for($i=0;$i<sizeof($this->suspiciousPart);$i++) {
$word = "";
for($j=$i;$j<sizeof($this->suspiciousPart);$j++) {
$word .= $this->suspiciousPart[$j];
//var_dump($word);
if(strpos(in_array($word, $this->suspiciousList), $word) !== false) {
if($this->detect($word) == true) {
$i++;
} else {
$j++;
}
} else {
$i++;
}
}
}
}

有人有其他想法如何做到这一点吗?

谢谢

最佳答案

  1. 去除空格
  2. 使用一个包含所有关键字的正则表达式进行搜索,如下所示:(word1|word2|word3)

关于PHP嵌套数组搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6401558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com