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 防止单引号,双引号在接受页面转义

PHP页面中如果不希望出现以下情况:  单引号被转义为 /'  双引号被转义为 /"  那么可以进行如下设置以防止:  方法一...

PHP小技巧搜集,每个PHPer都来露一手

这个帖子主要是所有的PHPers把自己在开发或学习中的一些经验技巧进行总结,主要就是把解决某种事情更好的方法告诉大家. 我先说几个: 1,假如你使用echo输出一个简单的语句,类似与:...

php解决安全问题的方法实例

PHP安全配置 (1) 打开php的安全模式 php的安全模式是个非常重要的内嵌的安全机制,能够控制一些php中的函数,比如system(),同时把很多文件操作函数进行了权限控制,也不允...

PHP程序61条面向对象分析设计的经验小结

(1)所有数据都应该隐藏在所在的类的内部。 (2)类的使用者必须依赖类的共有接口,但类不能依赖它的使用者。 (3)尽量减少类的协议中的消息。 (4)实现所有类都理解的最基本公有接口[例如...

PHP源码之explode使用说明

当我们需要将一个数组根据某个字符或字串进行分割成数组的时候,explode用的很happy,但是你知道~explode是怎么工作的么~~ 首先可以肯定的是,explode也是会分配空间的...