PHP汉字拼音转换、公历农历转换的实例详解

发布时间:2020-09-15编辑:脚本学堂
本文介绍下,php编程中,进行汉字拼音转换与公历转农历的实现方法,有需要的朋友参考下。

本节内容:
PHP实现汉字拼音转换、公历农历转换。

本文整理了PHP汉字拼音转换和公历农历转换两个功能类文件,非常实用。
比如,查找通讯录可以通过联系人姓名的拼音首字母来查询,可以通过首字母来导航大数据量,可以通过转换拼音来做网站优化等。
公农历转化一般用在日历日程安排的项目中,方便农历的节日提醒等等。

效果图,如下所示:
汉字拼音转换与公历转农历

>>> 本例的源码包下载

1、PHP汉字转拼音
Pinyin.class.php类文件可以将大多数汉字转换成汉语拼音,当然也有个别生僻字不能转换,如果你想转换所有的汉字拼音的话,可能需要再配合一个汉字字库来实现,使用该类文件就基本能满足你的项目需求了。

用法:
 

复制代码 代码示例:
<?php
require_once("Pinyin.class.php");
$pinyin = new Pinyin();
$str = '好好学习天天向上';
echo $pinyin->strtopin($str);

输出:
hao hao xue xi tian tian xiang shang。

如果只是想输出汉字首字母则使用:
 

复制代码 代码示例:
echo $pinyin->strtopin($str,1);

输出:
hhxxttxs。

2、PHP公历农历转换
公历转农历的算法非常复杂,涉及到农历润月、干支纪年、生肖等。
本文整理的一个Lunar.class.php可以实现公农历互转功能。用法:
 

复制代码 代码示例:
require_once("Lunar.class.php");
$lunar = new Lunar();
 
$date = $lunar->convertLunarToSolar(2013,8,17); //公历转农历
print_r($date);

输出数组:
Array ( [0] => 二零一三 [1] => 七月 [2] => 十一 [3] => 癸巳 
[4] => 7 [5] => 11 [6] => 蛇 [7] => 0 ) 

如果要将农历转换成公历则使用:
 

复制代码 代码示例:
$date = $lunar->convertLunarToSolar(2013,8,17); //农历转公历
print_r($date);

输出数组:
Array ( [0] => 2013 [1] => 09 [2] => 21 )

以上整理的两个PHP类,可以满足项目基本需求,但是都有一定的缺陷,比如拼音转换可能会遇到生僻字转换不了,公历转农历你会发现2021年后的转换会出问题了。

哪位有好的代码,也可以分享下。

>>> 您可能感兴趣的文章:
PHP将数字转换为罗马字符的实例代码
php实现数字转换成中文大小写的代码
php将颜色名称转换为16进制表示的代码
php颜色值转换 php实现16进制数字与颜色值的转换
php 字母大小写转换的实例总结
PHP正则匹配日期和时间(时间戳转换)的例子
学习php中时间戳和日期格式的转换
将汉字转换成拼音的php函数