本文實(shí)例講述了php利用scws實(shí)現(xiàn)mysql全文搜索功能的方法。分享給大家供大家參考。具體方法如下:
scws這樣的中文分詞插件比較不錯(cuò),簡(jiǎn)單的學(xué)習(xí)了一下,它包涵一些專有名稱、人名、地名、數(shù)字年代等規(guī)則集合,可以直接將語(yǔ)句按這些規(guī)則分開成一個(gè)一個(gè)關(guān)鍵詞,準(zhǔn)確率在90%-95%之間,按照安裝說(shuō)明把scws的擴(kuò)展放入php的擴(kuò)展目錄里,下載規(guī)則文件和詞典文件,并在php配置文件中引用它們,就可以用scws進(jìn)行分詞了.
1) 修改 php 擴(kuò)展代碼以兼容支持 php 5.4.x
2) 修正 php 擴(kuò)展中 scws_get_tops 的 limit 參數(shù)不允許少于 10 的問(wèn)題
3) libscws 增加 scws_fork() 從既有的 scws 實(shí)例產(chǎn)生分支并共享詞典/規(guī)則集,主要用于多線程開發(fā).
4) 新增部分版本的 win32 的 dll 擴(kuò)展
PHP實(shí)例代碼如下:
<?php //實(shí)例化分詞插件核心類 $so = scws_new(); //設(shè)置分詞時(shí)所用編碼 $so->set_charset('utf-8'); //設(shè)置分詞所用詞典(此處使用utf8的詞典) $so->set_dict('/path/dict.utf8.xdb'); //設(shè)置分詞所用規(guī)則 $so->set_rule('/path/rules.utf8.ini '); //分詞前去掉標(biāo)點(diǎn)符號(hào) $so->set_ignore(true); //是否復(fù)式分割,如“中國(guó)人”返回“中國(guó)+人+中國(guó)人”三個(gè)詞。 $so->set_multi(true); //設(shè)定將文字自動(dòng)以二字分詞法聚合 $so->set_duality(true); //要進(jìn)行分詞的語(yǔ)句 $so->send_text(“歡迎來(lái)到火星時(shí)代IT開發(fā)”); //獲取分詞結(jié)果,如果提取高頻詞用get_tops方法 while ($tmp = $so->get_result()) { print_r($tmp); } $so->close(); ?>
注:如以上例子,輸入的文字,詞典,規(guī)則文件這三者的字符集必須統(tǒng)一,另外mysql 4.XX有的是不支持中文全文搜索的,可以存入關(guān)鍵字對(duì)應(yīng)的區(qū)位碼以方便全文搜索.
版本列表
版本 類型 平臺(tái) 性能 其它
SCWS-1.1.x C 代碼 *Unix*/*PHP* 準(zhǔn)確: 95%, 召回: 91%, 速度: 1.2MB/sec
PHP擴(kuò)展分詞速度: 250KB/sec [下載] [文檔] [安裝說(shuō)明]
php_scws.dll(1) PHP擴(kuò)展庫(kù) Windows/PHP 4.4.x 準(zhǔn)確: 95%, 召回: 91%,
php_scws.dll(2) PHP擴(kuò)展庫(kù) Windows/PHP 5.2.x 準(zhǔn)確: 95%, 召回: 91%,
php_scws.dll(3) PHP擴(kuò)展庫(kù) Windows/PHP 5.3.x 準(zhǔn)確: 95%, 召回: 91%,?
php_scws.dll(4) PHP擴(kuò)展庫(kù) Windows/PHP 5.4.x 準(zhǔn)確: 95%, 召回: 91%,
PSCWS23 PHP源代碼 不限 (不支持UTF-8) 準(zhǔn)確: 93%, 召回: 89%,
PSCWS4 PHP源代碼 不限 準(zhǔn)確: 95%, 召回: 91%,
?以上就是php利用scws實(shí)現(xiàn)mysql全文搜索功能的方法,的內(nèi)容,更多相關(guān)內(nèi)容請(qǐng)關(guān)注PHP中文網(wǎng)(miracleart.cn)!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

TostaycurrentwithPHPdevelopmentsandbestpractices,followkeynewssourceslikePHP.netandPHPWeekly,engagewithcommunitiesonforumsandconferences,keeptoolingupdatedandgraduallyadoptnewfeatures,andreadorcontributetoopensourceprojects.First,followreliablesource

PHPbecamepopularforwebdevelopmentduetoitseaseoflearning,seamlessintegrationwithHTML,widespreadhostingsupport,andalargeecosystemincludingframeworkslikeLaravelandCMSplatformslikeWordPress.Itexcelsinhandlingformsubmissions,managingusersessions,interacti

TosettherighttimezoneinPHP,usedate_default_timezone_set()functionatthestartofyourscriptwithavalididentifiersuchas'America/New_York'.1.Usedate_default_timezone_set()beforeanydate/timefunctions.2.Alternatively,configurethephp.inifilebysettingdate.timez

TovalidateuserinputinPHP,usebuilt-invalidationfunctionslikefilter_var()andfilter_input(),applyregularexpressionsforcustomformatssuchasusernamesorphonenumbers,checkdatatypesfornumericvalueslikeageorprice,setlengthlimitsandtrimwhitespacetopreventlayout

ThePhpfunctionSerialize () andunserialize () AreusedtoconvertcomplexdaTastructdestoresintostoraSandaBackagain.1.Serialize () c OnvertsdatalikecarraysorobjectsraystringcontainingTypeandstructureinformation.2.unserialize () Reconstruct theoriginalatataprom

You can embed PHP code into HTML files, but make sure that the file has an extension of .php so that the server can parse it correctly. Use standard tags to wrap PHP code, insert dynamic content anywhere in HTML. In addition, you can switch PHP and HTML multiple times in the same file to realize dynamic functions such as conditional rendering. Be sure to pay attention to the server configuration and syntax correctness to avoid problems caused by short labels, quotation mark errors or omitted end labels.

The key to writing clean and easy-to-maintain PHP code lies in clear naming, following standards, reasonable structure, making good use of comments and testability. 1. Use clear variables, functions and class names, such as $userData and calculateTotalPrice(); 2. Follow the PSR-12 standard unified code style; 3. Split the code structure according to responsibilities, and organize it using MVC or Laravel-style catalogs; 4. Avoid noodles-style code and split the logic into small functions with a single responsibility; 5. Add comments at key points and write interface documents to clarify parameters, return values ??and exceptions; 6. Improve testability, adopt dependency injection, reduce global state and static methods. These practices improve code quality, collaboration efficiency and post-maintenance ease.

Yes,youcanrunSQLqueriesusingPHP,andtheprocessinvolveschoosingadatabaseextension,connectingtothedatabase,executingqueriessafely,andclosingconnectionswhendone.Todothis,firstchoosebetweenMySQLiorPDO,withPDObeingmoreflexibleduetosupportingmultipledatabas
