Php 将匹配词提取到JSON文件
是否可以将与JSON文件中的内容匹配的内容提取为单独的JSON数据Php 将匹配词提取到JSON文件,php,arrays,json,Php,Arrays,Json,是否可以将与JSON文件中的内容匹配的内容提取为单独的JSON数据 <?php $searchArray = array('settings all','print', 'sum', 'industry'); // total 50K words function sanitize($string,$searchArray) { $repl = array_map("dashReplace", $searchArray); $pattern = array_map("
<?php
$searchArray = array('settings all','print', 'sum', 'industry'); // total 50K words
function sanitize($string,$searchArray) {
$repl = array_map("dashReplace", $searchArray);
$pattern = array_map("insertWordBoundaries", $searchArray);
$string = preg_replace($pattern,$repl,$string);
return $string;
}
function dashReplace($str) {
return "<span class='txtOlg'>" . $str . "</span>";
}
function insertWordBoundaries($str){
return "/\b". preg_quote($str,"/") ."\b/";
}
$text = 'Lorem Ipsum is simply dummy text of the printing and typesettings all industry.';
echo sanitize($text,$searchArray);
您可以使用数组相交($array1,$array2)
为您提供一个数组,其中两个数组都具有该值
您可以使用数组相交($array1,$array2)
为您提供一个数组,其中两个数组都具有该值
好的!在做了一些研究之后,我想到了这个,用php和mysql加快搜索速度
1。创建索引示例
下面的SQL语句在“Persons”表的“lastname”列上创建一个名为“idx_lastname”的索引
请看这里:
有几种方法可以创建索引(列的组合)等等。您可能知道它们
2.全文
我在我所有的项目中都使用全文,它对我来说很好,在性能上从来没有问题。
Mysql站点:
请看这里:
其他解决方案
检查mysql设置,使用更快的方法,并在上面创建列。
示例:char比varchar快,但char的字数限制更小
您需要研究mysql更快的方法
给出的答案是你想要的最好的解决方案,所以我不会给出重复的答案
但我真的不认为这个解决方案会提高服务器的性能。
即使会让它变得更慢,你也需要了解mysql的设置,以及如何让它更快,如何发送最少的查询等等。好的!在做了一些研究之后,我想到了这个,用php和mysql加快搜索速度
1。创建索引示例
下面的SQL语句在“Persons”表的“lastname”列上创建一个名为“idx_lastname”的索引
请看这里:
有几种方法可以创建索引(列的组合)等等。您可能知道它们
2.全文
我在我所有的项目中都使用全文,它对我来说很好,在性能上从来没有问题。
Mysql站点:
请看这里:
其他解决方案
检查mysql设置,使用更快的方法,并在上面创建列。
示例:char比varchar快,但char的字数限制更小
您需要研究mysql更快的方法
给出的答案是你想要的最好的解决方案,所以我不会给出重复的答案
但我真的不认为这个解决方案会提高服务器的性能。
即使会让它变得更慢,你也需要了解mysql的设置,以及如何让它更快,如何发送最小的查询等等。一切都是可能的(除了木制的火炉)。引导服务也是如此。你必须自己尝试一些东西,如果你遇到一些问题,向我们展示你的代码并问一些具体的问题。我看到一个单个单词的数组,然后是一个长字符串。JSON在哪里起作用?@Dilek(Merhaba)是的,实际上,我想把它放在一个数组中。仅在一个数组中-因此我希望防止从超过50000个单词池中再次搜索它。仅在单独的数组中打印匹配的单词。我认为这与AJAX无关。谢谢你的帮助和时间@Dilek:)(O kelimeler-nereden-geliyor?)这句话是从哪里来的?一切都是可能的(除了木制火炉)。引导服务也是如此。你必须自己尝试一些东西,如果你遇到一些问题,向我们展示你的代码并问一些具体的问题。我看到一个单个单词的数组,然后是一个长字符串。JSON在哪里起作用?@Dilek(Merhaba)是的,实际上,我想把它放在一个数组中。仅在一个数组中-因此我希望防止从超过50000个单词池中再次搜索它。仅在单独的数组中打印匹配的单词。我认为这与AJAX无关。谢谢你的帮助和时间@Dilek:)(O kelimeler-nereden-geliyor?)这些话是从哪里来的?
<?php
$searchArray = array('settings all','print', 'sum', 'industry');
$text = 'Lorem Ipsum is simply dummy text of the printing and typesettings all industry.';
$text = str_replace('.', '', $text); // and any other characters you dont want
$checkArray = explode(' ', $text);
var_dump(array_intersect($searchArray, $checkArray));
CREATE INDEX idx_lastname
ON Persons (LastName);