PHP汉字拼音转换和公历农历转换

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

1、PHP汉字转拼音

Pinyin.class.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年后的转换会出问题了,大家有空可以研究下,如果您有更好的实现代码,欢迎分享。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值