Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Nhận các từ phổ biến trong PHP + MySQL

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;
?>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự khác biệt về MySQL giữa hai hàng của một Câu lệnh SELECT

  2. Sử dụng Hibernate's ScrollableResults để đọc chậm 90 triệu bản ghi

  3. Sử dụng php để trả về giá trị GROUP_CONCAT ('column x')

  4. Làm thế nào để xóa bảng điều khiển màn hình mysql trong Windows?

  5. Ưu tiên ORDER BY hơn GROUP BY trong MySQL mà không có truy vấn con