ホームページ >バックエンド開発 >PHPチュートリアル >like_text() による PHP 記事の類似性の比較は少し遅いですが、効率は良いでしょうか?

like_text() による PHP 記事の類似性の比較は少し遅いですが、効率は良いでしょうか?

WBOY
WBOYオリジナル
2016-06-23 14:17:491772ブラウズ

PHP 記事の類似性比較は、similar_text() を使用すると少し遅くなります。効率は良いでしょうか?
すべての記事内容がテキストに保存されており、比較する必要がある記事内容を横断し、
類似テキスト()を介して比較する場合、この方法は実現可能ですか?


ディスカッションに返信 (解決策)

この投稿は、2013-07-31 17:54:18 に xuzuning によって最終編集されました

オペレーティング システムが提供するファイル差分コマンドを使用できます
linux : diff
window : fc
レポート内の行数が多いほど、類似性は低くなります linux : diff

window : fc
それらはすべてです。レポート内の行数が増えると、自然な類似性はどのようにして低下しますか。


たとえば、(ウィンドウ)

system("fc 1.txt 2.txt > 3.txt");readfile('3.txt');

linux および wc コマンドを使用してファイルの行番号を取得します


また、exec を使用して差分結果の配列

exec("fc 1.txt 2.txt", $a);print_r($a);
を直接返すこともできます

能力がある場合は、ダウンロードして実行することもできますxdiff 拡張機能をコンパイルします

また、exec を使用して差分の結果配列

exec("fc 1.txt 2.txt", $a);print_r($a);
を直接返すこともできます

能力がある場合は、xdiff 拡張機能をダウンロードしてコンパイルすることもできます

exec を使用して差分を直接返すこともできます結果配列

exec("fc 1.txt 2.txt", $a);print_r($a);


能力がある場合は、xdiff 拡張機能をダウンロードしてコンパイルすることもできます

また、exec を使用して差分の結果配列
exec("fc 1.txt 2.txt", $a);print_r($a);
を直接返すこともできます

能力がある場合は、xdiff 拡張機能をダウンロードしてコンパイルすることもできますxdiff 拡張機能

exec を使用して差分結果配列
exec("fc 1.txt 2.txt", $a);print_r($a);
を直接返すこともできます

能力がある場合は、xdiff 拡張機能をダウンロードしてコンパイルすることもできます



exec を使用して差分結果配列を直接返すこともできます
exec("fc 1.txt 2.txt", $a);print_r($a);


能力があれば、xdiff 拡張機能をダウンロードしてコンパイルすることもできます
データベースのテーブル情報を直接読み取り、コンテンツをトラバースし、記事コンテンツの比較と比較する場合、どうすればよいですか?
最初に単語をセグメント化し、類似性によって比較し、アルゴリズムか何かを書いても大丈夫ですか?
データベースの記事に大量のデータが含まれると、データベースの内容に依存してテキストを保存し、それを比較するのは遅すぎますか?

exec を使用して差分結果配列
exec("fc 1.txt 2.txt", $a);print_r($a);
を直接返すこともできます

能力がある場合は、xdiff 拡張機能をダウンロードしてコンパイルすることもできます
これを行う方法がわかりません。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。