php中文语义分析实现方法示例


Posted in PHP onSeptember 28, 2019

本文实例讲述了php中文语义分析实现方法。分享给大家供大家参考,具体如下:

最近公司有个需求要做文章关键词提取,发现有个波森语义分析,还不错,把其http接口封装了一下,
发布到packagist上了。

简介

简单的封装了BosonNLP中文语义识别的api。

安装

composer require xdao/boson-nlp

使用

require 'vendor/autoload.php';
use Xdao\Util\BosonNLP;
$news = <<<EOF
继前不久始于中国的召回风波,宝马因为车辆的发动机螺栓故障,在全球范围将召回48.9万辆车,在原有中国召回的基础上数量进一步增加。
据悉,召回车辆将包括北美市场的15.6万辆,宝马曾于3月宣布在华召回232,098辆发动机螺栓故障车辆。涉及车型包括搭载六缸发动机的宝马5系、7系、X3、X5,。
但具体型号Santer并没有透露。宝马发言人Bernhard Santer表示,目前尚无该故障造成事故或伤亡的报告。但他仍建议相关车主及时检查车辆引擎。
Santer说,凭借剩余的动力,车辆仍旧可以坚持到最近的修理厂。
EOF;
//example1 不抛出异常
$bnlp = new BosonNLP("your_key");
$response= $bnlp->keywords($news);
if($response){
 var_dump($response);
}
//example2 抛出异常
$bnlp = new BosonNLP("your_key",true,true);
try {
  $response= $bnlp->keywords($news."\""); 
  var_dump($response);
} catch (Exception $ex) {
  echo $ex->getMessage();
}
//example3 去除英文标点
$response= $bnlp->keywords(BosonNLP::removePunct($news."\""));
var_dump($response);

注意

  • 为了简洁,使用的是php内置的file_get_contents,不支持异步,返回原始所有数据,未做处理

php中文语义分析实现方法示例

  • 有两种处理错误方式,一种是错误时返回false,一种是抛出异常

php中文语义分析实现方法示例

  • BosonNLP有点傻,如果末尾带了英文的引号就不能处理了,如上exampl2,于是提供了一个去除英文标点的静态方法removePunct
  • 详细的文档,请查阅官网

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
5.PHP的其他功能
Oct 09 PHP
PHP新手上路(十四)
Oct 09 PHP
PHP 操作文件的一些FAQ总结
Feb 12 PHP
php入门学习知识点三 PHP上传
Jul 14 PHP
PHP array_multisort() 函数的深入解析
Jun 20 PHP
解析PHP 使用curl提交json格式数据
Jun 29 PHP
php实现简易聊天室应用代码
Sep 23 PHP
PHP之图片上传类实例代码(加了缩略图)
Jun 30 PHP
PHP 断点续传实例详解
Nov 11 PHP
PHP使用ActiveMQ实例
Feb 05 PHP
PHP实现数据库的增删查改功能及完整代码
Apr 18 PHP
ThinkPHP5与单元测试PHPUnit使用详解
Feb 23 PHP
PHP迭代器和生成器用法实例分析
Sep 28 #PHP
php实现的数组转xml案例分析
Sep 28 #PHP
PHP反射原理与用法深入分析
Sep 28 #PHP
Windows服务器中PHP如何安装redis扩展
Sep 27 #PHP
php-fpm超时时间设置request_terminate_timeout资源问题分析
Sep 27 #PHP
thinkPHP+LayUI 流加载实现功能
Sep 27 #PHP
PHP的cookie与session原理及用法详解
Sep 27 #PHP
You might like
PHP4实际应用经验篇(3)
2006/10/09 PHP
使用PHP 5.0创建图形的巧妙方法
2010/10/12 PHP
基于PHP字符串的比较函数strcmp()与strcasecmp()的使用详解
2013/05/15 PHP
php实现监听事件
2013/11/06 PHP
PHP动态生成javascript文件的2个例子
2014/04/11 PHP
php+memcache实现的网站在线人数统计代码
2014/07/04 PHP
PHP使用mysql_fetch_object从查询结果中获取对象集的方法
2015/03/18 PHP
Yii2中简单的场景使用介绍
2017/06/02 PHP
Javascript 面向对象(二)封装代码
2012/05/23 Javascript
基于jquery的文本框与autocomplete结合使用(asp.net+json)
2012/05/30 Javascript
Ajax执行顺序流程及回调问题分析
2012/12/10 Javascript
IE 下Enter提交表单存在重复提交问题的解决方法
2014/05/04 Javascript
简单谈谈node.js 版本控制 nvm和 n
2015/10/15 Javascript
javascript之IE版本检测超简单方法
2016/08/20 Javascript
微信小程序 PHP生成带参数二维码
2017/02/21 Javascript
webpack学习教程之前端性能优化总结
2017/12/05 Javascript
使用ngrok+express解决本地环境中微信接口调试问题
2018/02/26 Javascript
jQuery实现轮播图及其原理详解
2020/04/12 jQuery
Node.js 获取微信JS-SDK CONFIG的方法示例
2019/05/21 Javascript
在Vue中使用antv的示例代码
2020/06/29 Javascript
[35:44]2014 DOTA2华西杯精英邀请赛 5 24 iG VS VG
2014/05/26 DOTA
[55:03]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第二场 11.20
2020/11/20 DOTA
python 中random模块的常用方法总结
2017/07/08 Python
Win10+GPU版Pytorch1.1安装的安装步骤
2019/09/27 Python
python 变量初始化空列表的例子
2019/11/28 Python
在python3中实现更新界面
2020/02/21 Python
Python任务自动化工具tox使用教程
2020/03/17 Python
简单了解Python字典copy与赋值的区别
2020/09/16 Python
详解python算法常用技巧与内置库
2020/10/17 Python
自荐信格式简述
2014/01/25 职场文书
后勤主管岗位职责
2014/03/01 职场文书
2014年元旦感言
2014/03/06 职场文书
Mysql文件存储图文详解
2021/06/01 MySQL
浅谈Python协程asyncio
2021/06/20 Python
git stash(储藏)的用法总结
2022/06/25 Servers
Python可视化神器pyecharts之绘制地理图表练习
2022/07/07 Python