php根据日期或时间戳获取星座信息和生肖等信息

yipeiwu_com5年前PHP代码库

分享一个利用php根据日期或时间戳获取相应的干支纪年,生肖和星座信息的函数方法,具体函数代码以及使用方法如下:

/** 
判断干支、生肖和星座 
*/ 
function birthext($birth){ 
 if(strstr($birth,'-')===false&&strlen($birth)!==8){ 
  $birth=date("Y-m-d",$birth); 
 } 
 if(strlen($birth)===8){ 
  if(eregi('([0-9]{4})([0-9]{2})([0-9]{2})$',$birth,$bir)) 
  $birth="{$bir[1]}-{$bir[2]}-{$bir[3]}"; 
 } 
 if(strlen($birth)<8){ 
  return false; 
 } 
 $tmpstr= explode('-',$birth); 
 if(count($tmpstr)!==3){ 
  return false; 
 } 
 $y=(int)$tmpstr[0]; 
 $m=(int)$tmpstr[1]; 
 $d=(int)$tmpstr[2]; 
 $result=array(); 
 $xzdict=array('摩羯','水瓶','双鱼','白羊','金牛','双子','巨蟹','狮子','处女','天秤','天蝎','射手'); 
 $zone=array(1222,122,222,321,421,522,622,722,822,922,1022,1122,1222); 
 if((100*$m+$d)>=$zone[0]||(100*$m+$d)<$zone[1]){ 
  $i=0; 
 }else{ 
  for($i=1;$i<12;$i++){ 
   if((100*$m+$d)>=$zone[$i]&&(100*$m+$d)<$zone[$i+1]){ break; } 
  } 
 } 
 $result['xz']=$xzdict[$i].'座'; 
 $gzdict=array(array('甲','乙','丙','丁','戊','己','庚','辛','壬','癸'),array('子','丑','寅','卯','辰','巳','午','未','申','酉','戌','亥')); 
 $i= $y-1900+36;
 $result['gz']=$gzdict[0][($i%10)].$gzdict[1][($i%12)]; 
 $sxdict=array('鼠','牛','虎','兔','龙','蛇','马','羊','猴','鸡','狗','猪'); 
 $result['sx']=$sxdict[(($y-4)%12)]; 
 return $result; 
}

 使用实例如下:

<?php 
header("Content-Type:text/html;charset=utf-8"); 
echo '<pre>';
$arr=birthext('1373287361'); //时间戳 
print_r($arr); 
$arr=birthext('2013-07-08'); 
print_r($arr); 
$arr=birthext('20130708'); 
print_r($arr); 

打印结果如下:

以上就是关于php根据日期或时间戳获取星座信息和生肖等信息的函数方法,希望对大家的学习有所帮助。

相关文章

php使用Jpgraph绘制简单X-Y坐标图的方法

php使用Jpgraph绘制简单X-Y坐标图的方法

本文实例讲述了php使用Jpgraph绘制简单X-Y坐标图的方法。分享给大家供大家参考。具体实现方法如下: <?php include ("src/jpgraph.p...

PHP中overload与override的区别

override(重写,覆盖) 1、方法名、参数、返回值相同。 2、子类方法不能缩小父类方法的访问权限。 3、子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)。 4、存...

PHP+ajax分页实例简析

本文实例讲述了PHP+ajax分页实现方法。分享给大家供大家参考,具体如下: HTML代码如下: <html> <head> <meta http-eq...

PHP __autoload()方法真的影响性能吗?

PHP __autoload()方法真的影响性能吗?

介绍 对于php性能问题,议论最多的就是__autoload()方法,很多人提到这个方法非常影响性能。还有人说opcode也能影响到__autoload()方法,所以针对这两点我做了个测...

PHP解耦的三重境界(浅谈服务容器)

阅读本文之前你需要掌握:PHP语法,面向对象 在完成整个软件项目开发的过程中,有时需要多人合作,有时也可以自己独立完成,不管是哪一种,随着代码量上升,写着写着就“失控”了,渐渐“丑陋接口...