similar_text
(PHP 4, PHP 5, PHP 7, PHP 8)
similar_text — 二つの文字列の間の類似性を計算する
パラメータ
-
string1
-
最初の文字列。
-
string2
-
次の文字列。
注意:
string1
と
string2
を入れ替えると、
結果は異なるものになります;
例を参照ください。
-
percent
-
3 番目の引数としてリファレンスを渡すことにより、
similar_text() は類似性をパーセントで計算します。
これは、similar_text() の結果を、
与えられた文字列の長さの平均を
100
倍した値で割ることで出しています。
戻り値
両方の文字列でマッチした文字の数を返します。
マッチする文字数は、
最初の共通最長部分文字列を探し、
同じことをその文字列の 前後の文字列に対して再帰的に行うことで計算されます。
そうして見つかった全ての共通部分文字列の長さが追加されます。
例
例1 similar_text() で、引数を入れ替えた場合の例
以下のコードは、
string1
と
string2
を入れ替えると、異なる結果になる可能性を示しています。
<?php
$sim = similar_text('bafoobar', 'barfoo', $perc);
echo "類似度: $sim ($perc %)\n";
$sim = similar_text('barfoo', 'bafoobar', $perc);
echo "類似度: $sim ($perc %)\n";
類似度: 5 (71.428571428571 %)
類似度: 3 (42.857142857143 %)