Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
PHP: metaphone - Manual
[go: Go Back, main page]

PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net

search for in the

money_format" width="11" height="7"/> <md5
Last updated: Wed, 01 Nov 2006
view this page in

metaphone

(PHP 4, PHP 5)

metaphone -- 文字列の metaphone キーを計算する

説明

string metaphone ( string str [, int phones] )

str の metaphone キーを計算します。

soundex() と同様に metaphone は、発音が 似た単語について同じキーを作成します。metaphone は、 英語の発音の基本的ルールを知っているので、 soundex() よりも正確です。 metaphone が生成するキーは可変長です。

metaphone は、Lawrence Philips <lphilips at verity dot com> により 開発されました。["Practical Algorithms for Programmers", Binstock & Rex, Addison Wesley, 1995] で解説されています。



add a note add a note User Contributed Notes
metaphone
altano at bigfoot dot com
25-Nov-2005 06:48
You can find the source code of a working example on how to use metaphones for spell checking, plus a free MySQL database dump of American English words and their metaphones at http://dubi.org/spell-checker

That should get you started on writing a spell-checker or whatever in no time.
13-Oct-2005 02:44
I have a forum for spanish speakers and the speller that I was using was using the metaphone function  and it didn't make a lot of sense. I looked for an equivalent  metaphone function for spanish and I never even came close to find it, so I was very happy to find the functional DoubleMetaphone().  Thanks to that function, I came up with this spanish_metaphone function.

Here it is:

       http://www.geocities.com/isloera/spanish_methaphone.txt
stpierre(ta)nebr]NOSPAM[wesleyan(tod)edu
10-Jul-2004 03:17
A C implementation of double metaphone is at http://www.cpan.org/modules/ by-authors/id/MAURICE/Text-DoubleMetaphone-0.07.tar.gz.  (Sorry I had to break that URL up; wouldn't let me post it otherwise.)  If you really need double metaphone that badly, you could roll this into your PHP build for (I would suspect) substantial performance gains.
mail at spam-off dot iaindooley dot com
16-Jan-2004 05:37
you can use the metaphone function quite effectively with phrases by taking the levenshtein distances between two metaphone codes, and then taking this as a percentage of the length of the original metaphone code. thus you can define a percentage error, (say 20%) and accept only matches that are closer than that. i've found this works quite effectively in a function i am using on my website where an album name that the user entered is verified against existing album names that may be similar. this is also an excellent way of people being able to vaguely remember a phrase and get several suggestions out of the database. so you could type "i stiched nine times" with an error percentage of, say, 50 and still get 'a stitch in time saves nine' back as a match.
server: zinkconsulting.com user: galen@
26-Nov-2003 07:18
A small warning about the double metaphone function/class implemented in php: it's slow. Very slow.

On my Mac OS X box it takes roughly 4 seconds to calculate the double_metaphone of a given string 1,000 times and set a variable to that value. Given the exact same code, the built in metaphone function takes a mere 0.03 seconds. That's a huge difference. For reference, soundex takes about 0.015 seconds.

I had dreams of ranking my person database search results with double_metaphone, but with searches yielding a few thousand results sometimes, this isn't terribly reasonable. I'm back to basic metaphone functions.

I'd suggest anyone considering the use of the double_metaphone functionality weigh the slight improvement in results with the fact it's 100 times slower than the php function metaphone. I believe this difference is probably due mostly to implementation and optimization (php code vs. optimized internal php function).

Anybody up for writing a double_metaphone function for php? Maybe php 5?
ahjs at ozemail dot com dot au
13-Mar-2002 03:51
The improved double metaphone algorithm is available as a php class and function at http://swoodbridge.com/DoubleMetaPhone/
davef at getacard dot com
22-Apr-2000 10:52
A good reference to explain how the metaphone stuff works (and show you a working example) is:
http://www.lanw.com/java/phonetic/

money_format" width="11" height="7"/> <md5
Last updated: Wed, 01 Nov 2006
 
 
show source | credits | sitemap | contact | advertising | mirror sites