Ai đó đã làm việc đó.
Điều kỳ diệu bạn đang tìm kiếm là một hàm php có tên str_word_count () .
Trong đoạn mã ví dụ của tôi bên dưới, nếu bạn nhận được nhiều từ không liên quan từ điều này, bạn sẽ cần phải viết phần tách tùy chỉnh để loại bỏ chúng. Ngoài ra, bạn sẽ muốn tách tất cả các thẻ html khỏi các từ và các ký tự khác.
Tôi sử dụng một cái gì đó tương tự như thế này để tạo từ khóa (rõ ràng là mã đó là độc quyền). Tóm lại, chúng tôi đang lấy văn bản được cung cấp, chúng tôi đang kiểm tra tần suất từ và nếu các từ xuất hiện theo thứ tự, chúng tôi sẽ sắp xếp chúng trong một mảng dựa trên mức độ ưu tiên. Vì vậy, những từ thường xuyên nhất sẽ nằm đầu tiên trong đầu ra. Chúng tôi không tính những từ chỉ xuất hiện một lần.
<?php
$text = "your text.";
//Setup the array for storing word counts
$freqData = array();
foreach( str_word_count( $text, 1 ) as $words ){
// For each word found in the frequency table, increment its value by one
array_key_exists( $words, $freqData ) ? $freqData[ $words ]++ : $freqData[ $words ] = 1;
}
$list = '';
arsort($freqData);
foreach ($freqData as $word=>$count){
if ($count > 2){
$list .= "$word ";
}
}
if (empty($list)){
$list = "Not enough duplicate words for popularity contest.";
}
echo $list;
?>