You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

132 lines
5.4 KiB

8 years ago
  1. <?php
  2. // 严格开发模式
  3. ini_set('display_errors', 'On');
  4. ini_set('memory_limit', '64M');
  5. error_reporting(E_ALL);
  6. $t1 = $ntime = microtime(true);
  7. $endtime = '未执行任何操作,不统计!';
  8. function print_memory($rc, &$infostr)
  9. {
  10. global $ntime;
  11. $cutime = microtime(true);
  12. $etime = sprintf('%0.4f', $cutime - $ntime);
  13. $m = sprintf('%0.2f', memory_get_usage()/1024/1024);
  14. $infostr .= "{$rc}: &nbsp;{$m} MB 用时:{$etime} 秒<br />\n";
  15. $ntime = $cutime;
  16. }
  17. header('Content-Type: text/html; charset=utf-8');
  18. $memory_info = '';
  19. print_memory('没任何操作', $memory_info);
  20. require_once 'PhpAnalysis.class.php';
  21. $str = (isset($_POST['source']) ? $_POST['source'] : '');
  22. $loadtime = $endtime1 = $endtime2 = $slen = 0;
  23. $do_fork = $do_unit = true;
  24. $do_multi = $do_prop = $pri_dict = false;
  25. if($str != '')
  26. {
  27. //岐义处理
  28. $do_fork = empty($_POST['do_fork']) ? false : true;
  29. //新词识别
  30. $do_unit = empty($_POST['do_unit']) ? false : true;
  31. //多元切分
  32. $do_multi = empty($_POST['do_multi']) ? false : true;
  33. //词性标注
  34. $do_prop = empty($_POST['do_prop']) ? false : true;
  35. //是否预载全部词条
  36. $pri_dict = empty($_POST['pri_dict']) ? false : true;
  37. $tall = microtime(true);
  38. //初始化类
  39. PhpAnalysis::$loadInit = false;
  40. $pa = new PhpAnalysis('utf-8', 'utf-8', $pri_dict);
  41. print_memory('初始化对象', $memory_info);
  42. //载入词典
  43. $pa->LoadDict();
  44. print_memory('载入基本词典', $memory_info);
  45. //执行分词
  46. $pa->SetSource($str);
  47. $pa->differMax = $do_multi;
  48. $pa->unitWord = $do_unit;
  49. $pa->StartAnalysis( $do_fork );
  50. print_memory('执行分词', $memory_info);
  51. $okresult = $pa->GetFinallyResult(' ', $do_prop);
  52. print_memory('输出分词结果', $memory_info);
  53. $pa_foundWordStr = $pa->foundWordStr;
  54. $t2 = microtime(true);
  55. $endtime = sprintf('%0.4f', $t2 - $t1);
  56. $slen = strlen($str);
  57. $slen = sprintf('%0.2f', $slen/1024);
  58. $pa = '';
  59. }
  60. $teststr = "2010年1月,美国国际消费电子展 (CES)上,联想将展出一款基于ARM架构的新产品,这有可能是传统四大PC厂商首次推出的基于ARM架构的消费电子产品,也意味着在移动互联网和产业融合趋势下,传统的PC芯片霸主英特尔正在遭遇挑战。
  61. 11月12日,联想集团副总裁兼中国区总裁夏立向本报证实,联想基于ARM架构的新产品正在筹备中。
  62. 英特尔新闻发言人孟轶嘉表示,对第三方合作伙伴信息不便评论。
  63. 正面交锋
  64. ARM内部人士透露,11月5日,ARM高级副总裁lanDrew参观了联想研究院,拜访了联想负责消费产品的负责人,进一步商讨基于ARM架构的新产品。ARM是英国芯片设计厂商,全球几乎95%的手机都采用ARM设计的芯片。
  65. 据悉,这是一款采用高通芯片(基于ARM架构)的新产品,高通产品市场总监钱志军表示,联想对此次项目很谨慎,对于产品细节不方便透露。
  66. 夏立告诉记者,联想研究院正在考虑多种方案,此款基于ARM架构的新产品应用邻域多样化,并不是替代传统的PC,而是更丰富的满足用户的需求。目前,客户调研还没有完成,“设计、研发更前瞻一些,最终还要看市场、用户接受程度。”";
  67. ?>
  68. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  69. <html xmlns="http://www.w3.org/1999/xhtml">
  70. <head>
  71. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  72. <title>分词测试</title>
  73. </head>
  74. <body>
  75. <table width='90%' align='center'>
  76. <tr>
  77. <td>
  78. <hr size='1' />
  79. <form id="form1" name="form1" method="post" action="?ac=done" style="margin:0px;padding:0px;line-height:24px;">
  80. <b>源文本:</b>&nbsp; <a href="dict_build_new.php" target="_blank">[更新词典]</a> <br/>
  81. <textarea name="source" style="width:98%;height:150px;font-size:14px;"><?php echo (isset($_POST['source']) ? $_POST['source'] : $teststr); ?></textarea>
  82. <br/>
  83. <input type='checkbox' name='do_fork' value='1' <?php echo ($do_fork ? "checked='1'" : ''); ?>/>岐义处理
  84. <input type='checkbox' name='do_unit' value='1' <?php echo ($do_unit ? "checked='1'" : ''); ?>/>新词识别
  85. <input type='checkbox' name='do_multi' value='1' <?php echo ($do_multi ? "checked='1'" : ''); ?>/>多元切分
  86. <input type='checkbox' name='do_prop' value='1' <?php echo ($do_prop ? "checked='1'" : ''); ?>/>词性标注
  87. <input type='checkbox' name='pri_dict' value='1' <?php echo ($pri_dict ? "checked='1'" : ''); ?>/>预载全部词条
  88. <br/>
  89. <input type="submit" name="Submit" value="提交进行分词" />
  90. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  91. <input type="reset" name="Submit2" value="重设表单数据" />
  92. </form>
  93. <br />
  94. <textarea name="result" id="result" style="width:98%;height:120px;font-size:14px;color:#555"><?php echo (isset($okresult) ? $okresult : ''); ?></textarea>
  95. <br /><br />
  96. <b>调试信息:</b>
  97. <hr />
  98. <font color='blue'>字串长度:</font><?php echo $slen; ?>K <font color='blue'>自动识别词:</font><?php echo (isset($pa_foundWordStr)) ? $pa_foundWordStr : ''; ?><br />
  99. <hr />
  100. <font color='blue'>内存占用及执行时间:</font>(表示完成某个动作后正在占用的内存)<hr />
  101. <?php echo $memory_info; ?>
  102. 总用时:<?php echo $endtime; ?>
  103. </td>
  104. </tr>
  105. </table>
  106. </body>
  107. </html>