使用rong framework + socket做php快速中文分词
点击 1283 创建时间 2014-07-29 18:46:04
<p>rong framework 最新版下载:http://rong.wudimei.com/</p>
<p>通过socket server分词的原理是,用php写的服务器启动时把词典加载到内存中。以后不用再加载了,从而节省了磁盘访问时间。于时分词就明显加快了。</p>
<p>首先你要建一个ChineseSegment.php,内容如下:</p>
<p><?php<br /> ini_set("display_errors",1);<br /> error_reporting(E_ALL |E_NOTICE|E_ERROR|E_WARNING);</p>
<p> </p>
<p>define( "ROOT" , dirname(dirname(dirname(dirname( FILE )))) );</p>
<p>set_include_path( "." . PATH_SEPARATOR .<br /> ROOT."/lib". PATH_SEPARATOR.<br /> get_include_path()<br /> );<br /> <br /> ini_set("memory_limit","256M");<br /> require_once "Rong/Search/Analyzer/CS/Server.php";</p>
<p>$server = new Rong_Search_Analyzer_CS_Server("127.0.0.1",5050);<br /> $server->driver ="Chinese";<br /> $server->config = array('dictionary_path' => dirname(FILE) . "/../data/chinese_dict-1.0.dat");<br /> $server->start();</p>
<p>//请修改'dictionary_path'的值,指向词典的路径。词典是一个一行一个词语的文本文件。</p>
<p>然后建一个ChineseSegmentServer.bat 用来执行上面的那个文件,内容为:</p>
<p>D:\AppServ\php-5.4.8\php.exe -c D:\AppServ\php-5.4.8\php.ini ChineseSegmentServer.php</p>
<p> </p>
<p>接下来,我们就可以在任意php中调用服务器的分词方法:</p>
<p><?php</p>
<p><br /> define( "ROOT" , dirname( FILE ) . "/../../../" );</p>
<p>set_include_path( "." . PATH_SEPARATOR .<br /> ROOT."/lib". PATH_SEPARATOR.<br /> get_include_path()<br /> );</p>
<p>require_once "Rong/Search/Analyzer/CS/Client.php";<br /> $client = new Rong_Search_Analyzer_CS_Client();<br /> $ret =$client->segment($text="杨庆荣你好,how are you yang qing rong?");<br /> print_r( $ret );</p>
<p> </p>
上一篇: 通达信极端指标
下一篇: iphone上传的图片变横着了