laravel实现汉子转拼音
实现 laravel 拼音
2023-09-11 14:14:57 时间
1.第三方扩展包overtrue/pinyin
1.1composer安装
composer require "overtrue/pinyin:~4.0"
可用选项:
选项 | 描述 |
---|---|
PINYIN_TONE | UNICODE 式音调:měi hǎo |
PINYIN_ASCII_TONE | 带数字式音调:mei3 hao3 |
PINYIN_NO_TONE | 无音调:mei hao |
PINYIN_KEEP_NUMBER | 保留数字 |
PINYIN_KEEP_ENGLISH | 保留英文 |
PINYIN_KEEP_PUNCTUATION | 保留标点 |
PINYIN_UMLAUT_V | 使用 v 代替 yu , 例如:吕 lyu 将会转为 lv |
1.2测试路由
Route::get('py','PyController@index');
1.3简单转化
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Overtrue\Pinyin\Pinyin;
class PyController extends Controller
{
public function index()
{
$pinyin = new Pinyin();
$info = $pinyin->convert('百分之十四,易租宝');#convert转化的意思
return $info;
}
}
1.4效果如图
2.更多使用方法
拼音数组
use Overtrue\Pinyin\Pinyin;
// 小内存型
$pinyin = new Pinyin(); // 默认
// 内存型
// $pinyin = new Pinyin('\\Overtrue\\Pinyin\\MemoryFileDictLoader');
// I/O型
// $pinyin = new Pinyin('\\Overtrue\\Pinyin\\GeneratorFileDictLoader');
$pinyin->convert('带着希望去旅行,比到达终点更美好');
// ["dai", "zhe", "xi", "wang", "qu", "lyu", "xing", "bi", "dao", "da", "zhong", "dian", "geng", "mei", "hao"]
$pinyin->convert('带着希望去旅行,比到达终点更美好', PINYIN_TONE);
// ["dài","zhe","xī","wàng","qù","lǚ","xíng","bǐ","dào","dá","zhōng","diǎn","gèng","měi","hǎo"]
$pinyin->convert('带着希望去旅行,比到达终点更美好', PINYIN_ASCII_TONE);
//["dai4","zhe","xi1","wang4","qu4","lyu3","xing2","bi3","dao4","da2","zhong1","dian3","geng4","mei3","hao3"]
生成用于链接的拼音字符串
$pinyin->permalink('带着希望去旅行'); // dai-zhe-xi-wang-qu-lyu-xing
$pinyin->permalink('带着希望去旅行', '.'); // dai.zhe.xi.wang.qu.lyu.xing
获取首字符字符串
$pinyin->abbr('带着希望去旅行'); // dzxwqlx
$pinyin->abbr('带着希望去旅行', '-'); // d-z-x-w-q-l-x
$pinyin->abbr('你好2018!', PINYIN_KEEP_NUMBER); // nh2018
$pinyin->abbr('Happy New Year! 2018!', PINYIN_KEEP_ENGLISH); // HNY2018
翻译整段文字为拼音
将会保留中文字符: ,。 ! ? : “ ” ‘ ’ 并替换为对应的英文符号。
$pinyin->sentence('带着希望去旅行,比到达终点更美好!');
// dai zhe xi wang qu lyu xing, bi dao da zhong dian geng mei hao!
$pinyin->sentence('带着希望去旅行,比到达终点更美好!', PINYIN_TONE);
// dài zhe xī wàng qù lǚ xíng, bǐ dào dá zhōng diǎn gèng měi hǎo!
相关文章
- 无需Flash实现图片裁剪——HTML5中级进阶
- 手把手实现腾讯qq拖拽删去效果(一)
- Java实现 LeetCode 725 分隔链表(暴力)
- Java实现 LeetCode 454 四数相加 II
- Triple 协议支持 Java 异常回传的设计与实现
- Android实现推送方式解决方案
- Python语言学习:Python语言学习之python包/库package的简介(模块的封装/模块路径搜索/模块导入方法/自定义导入模块实现华氏-摄氏温度转换案例应用)、使用方法、管理工具之详细攻略
- Qt 用代码实现菜单栏(MenuBar)和工具栏(ToolBar)
- 力扣——908. 最小差值 I(Java、C、JavaScript实现)
- CentOS 7 安装配置 Rsync 实现数据同步
- 【华为OD机试Python实现】HJ38 求小球落地5次后所经历的路程和第5次反弹的高度(中等)
- React Native布局实践:开发京东client首页(三)——轮播图的实现
- Android 实现仿微信朋友圈九宫格图片+NineGridView+ImageWatcher(图片查看:1.预览,2.拖动,3.放大,4.左右滑动,5.长按保存到手机)的功能
- nginx实现一个域名配置多个laravel项目的方法示例