2015-03-27 2 views
0

Я usng следующий сценарий, но он не работает, он продолжает говорить, что есть только один раз, например ключевого словаплотность ключевых слов и экземпляр PHP скрипт

Может быть, это что-то делать с особым характером? Не знаю, как это исправить, хотя

$word_count = explode(' ', "estudiar inglés estudiar inglés asdasd asd asd sadasd estudiar ingles adas dasd estudiar inglés"); 
$word_count = count($word_count); 
$keyword= "estudiar inglés"; 

echo $keyword; 

$keyword_count = preg_match_all("#{$keyword}#si", $text, $matches); 
$keyword_count = count($matches); 

$density = $keyword_count/$word_count * 100; 

$density = number_format($density, 2) . '%'; 

       echo $keyword_count; 
+0

Где '$ Text' определяется, кроме того, в ваш вызов 'preg_match_all()'? – hwnd

+0

Спасибо, однако, я обнаружил, что главная проблема заключается в том, как специальные символы хранятся в моей базе данных так, как «estudiar ingl & eacute; s», поэтому скрипт не находит его. Как я могу бороться с этим? – Jake

ответ

0

Этой работа:

$text  = "some text asoijw oijd cj isoj some text asiojoasj aisojsaij"; 

$word_count = explode(' ',$text); 
$word_count = count($word_count); 
$keyword = "some text"; 

$keyword_count = preg_match_all("/$keyword/i", $text, $matches); 
$keyword_count = count($matches[0]); 

$density = $keyword_count/$word_count * 100; 
$density = number_format($density, 2) . '%'; 

echo "Text: $text<br/>" 
    ."Keyword: $keyword<br/><br/>" 
    ."Matched $keyword_count time(s)<br/>" 
    ."Density: $density"; 

$ матчей [0]: preg_match_all сплита спички в подмассивы

+1

Спасибо, однако, я обнаружил, что главная проблема заключается в том, как специальные символы хранятся в моей базе данных так, как «estudiar ingl & eacute; s», поэтому скрипт не находит его. Как я могу бороться с этим? – Jake

+0

Декодировать html-объекты с помощью htmlentities_decode() http://php.net/html_entity_decode – Fest7

Смежные вопросы