有趣的小片段

  1. 计算生肖的: 

  2. function birthday2BornTag($birthday){ 

  3. $year = substr($birthday,0,4); 

  4. $bornTagarray = array(“猴”, “鸡”, “狗”, “猪”, “鼠”, “牛”, “虎”, “兔”, “龙”, “蛇”, 

  5.  

  6. “马”, “羊”); 

  7. $index = $year%12; 

  8. $bornTag = $bornTagarray[$index]; 

  9. return $bornTag

  10. echo birthday2BornTag(’1983-12-19′);

  1. /** 

  2. *getConstellation 根据出生生日取得星座 

  3. * 

  4. *@param String $brithday 用于得到星座的日期 格式为yyyy-mm-dd 

  5. * 

  6. *@param Array $format 用于返回星座的名称 

  7. * 

  8. *@return String 

  9. */ 

  10. function getConstellation($birthday$format=null) 

  11. $pattern = ‘/^d{4}-d{1,2}-d{1,2}$/’; 

  12. if (!preg_match($pattern$birthday$matchs)) 

  13.     return null; 

  14. $date = explode(‘-’, $birthday); 

  15. $year = $date[0]; 

  16. $month = $date[1]; 

  17. $day   = $date[2]; 

  18. if ($month <1 || $month>12 || $day < 1 || $day >31) 

  19.     return null; 

  20. //设定星座数组 

  21. $constellations = array

  22.       ‘摩羯座’, ‘水瓶座’, ‘双鱼座’, ‘白羊座’, ‘金牛座’, ‘双子座’, 

  23.       ‘巨蟹座’,'狮子座’, ‘处女座’, ‘天秤座’, ‘天蝎座’, ‘射手座’,); 

  24. //或 ‍‍$constellations = array( 

  25.       ‘Capricorn’, ‘Aquarius’, ‘Pisces’, ‘Aries’, ‘Taurus’, ‘Gemini’, 

  26.       ‘Cancer’,'Leo’, ‘Virgo’, ‘Libra’, ‘Scorpio’, ‘Sagittarius’,); 

  27. //设定星座结束日期的数组,用于判断 

  28. $enddays = array(19, 18, 20, 20, 20, 21, 22, 22, 22, 22, 21, 21,); 

  29. //如果参数format被设置,则返回值采用format提供的数组,否则使用默认的数组 

  30. if ($format != null) 

  31.     $values = $format

  32. else 

  33.     $values = $constellations

  34. //根据月份和日期判断星座 

  35. switch ($month

  36.     case 1: 

  37.       if ($day <= $enddays[0]) 

  38.       { 

  39.         $constellation = $values[0]; 

  40.       } 

  41.       else 

  42.       { 

  43.         $constellation = $values[1]; 

  44.       } 

  45.       break

  46.     case 2: 

  47.       if ($day <= $enddays[1]) 

  48.       { 

  49.         $constellation = $values[1]; 

  50.       } 

  51.       else 

  52.       { 

  53.         $constellation = $values[2]; 

  54.       } 

  55.       break

  56.     case 3: 

  57.       if ($day <= $enddays[2]) 

  58.       { 

  59.         $constellation = $values[2]; 

  60.       } 

  61.       else 

  62.       { 

  63.         $constellation = $values[3]; 

  64.       } 

  65.       break

  66.     case 4: 

  67.       if ($day <= $enddays[3]) 

  68.       { 

  69.         $constellation = $values[3]; 

  70.       } 

  71.       else 

  72.       { 

  73.         $constellation = $values[4]; 

  74.       } 

  75.       break

  76.     case 5: 

  77.       if ($day <= $enddays[4]) 

  78.       { 

  79.         $constellation = $values[4]; 

  80.       } 

  81.       else 

  82.       { 

  83.         $constellation = $values[5]; 

  84.       } 

  85.       break

  86.     case 6: 

  87.       if ($day <= $enddays[5]) 

  88.       { 

  89.         $constellation = $values[5]; 

  90.       } 

  91.       else 

  92.       { 

  93.         $constellation = $values[6]; 

  94.       } 

  95.       break

  96.     case 7: 

  97.       if ($day <= $enddays[6]) 

  98.       { 

  99.         $constellation = $values[6]; 

  100.       } 

  101.       else 

  102.       { 

  103.         $constellation = $values[7]; 

  104.       } 

  105.       break

  106.     case 8: 

  107.       if ($day <= $enddays[7]) 

  108.       { 

  109.         $constellation = $values[7]; 

  110.       } 

  111.       else 

  112.       { 

  113.         $constellation = $values[8]; 

  114.       } 

  115.       break

  116.     case 9: 

  117.       if ($day <= $enddays[8]) 

  118.       { 

  119.         $constellation = $values[8]; 

  120.       } 

  121.       else 

  122.       { 

  123.         $constellation = $values[9]; 

  124.       } 

  125.       break

  126.     case 10: 

  127.       if ($day <= $enddays[9]) 

  128.       { 

  129.         $constellation = $values[9]; 

  130.       } 

  131.       else 

  132.       { 

  133.         $constellation = $values[10]; 

  134.       } 

  135.       break

  136.     case 11: 

  137.       if ($day <= $enddays[10]) 

  138.       { 

  139.         $constellation = $values[10]; 

  140.       } 

  141.       else 

  142.       { 

  143.         $constellation = $values[11]; 

  144.       } 

  145.       break

  146.     case 12: 

  147.       if ($day <= $enddays[11]) 

  148.       { 

  149.         $constellation = $values[11]; 

  150.       } 

  151.       else 

  152.       { 

  153.         $constellation = $values[0]; 

  154.       } 

  155.       break

  156. return $constellation


你可能感兴趣的:(有趣的小片段)