下載現成的 PHP 中文分詞庫(如 PSCWS、Jieba-PHP),或自行維護詞庫檔案。
<?php
// 取得文章內容並清洗
$content = trim(strip_tags(get_article_content('intro')));
$tags = get_tags_arr($content); // 分詞函數回傳陣列
foreach ($tags as $tag) {
$tag = htmlspecialchars($tag);
echo "<a href='/search/?key={$tag}' title='{$tag}' target='_blank'>{$tag}</a> ";
}
?>
| 問題 | 原因 | 解決方案 |
|---|---|---|
| 關鍵字含 HTML 標籤 | 未過濾標籤 | 輸出前加 strip_tags() |
| 輸出亂碼 | 編碼不一致 | 用 mb_convert_encoding() 統一轉 UTF-8 |
| 不同瀏覽器顯示異常 | 編碼偵測差異 | 依 $_SERVER['HTTP_USER_AGENT'] 判斷是否轉碼 |
可結合 TF-IDF 或 TextRank 演算法,自動計算關鍵字權重,只輸出前 N 個核心詞,避免關鍵字堆砌。