/*
截取日期并且转换为unix的时间戳
$date_time:需要转换的时间
*/
$times=change_date('2008年02月3日');
echo $times;
function change_date($date_time)
{
$date_times=preg_replace("/[^\d]/","",$date_time);
  return strtotime($date_times);
}

解决方案 »

  1.   

    $str="2008年2月3日";
    $date=implode("-",sscanf($str,"%d年%d月%d日"));
    echo strtotime($date);$str="2月3日2008年";
    list($m,$d,$Y)=sscanf($str,"%d月%d日%d年");
    echo strtotime("$Y-$m-$d");
      

  2.   


    [code=PHP]
    <?php
    $times=change_date('02月03日2008年');
        echo $times."<br>";
        echo date('Y-m-d',$times)."<br>";//格式yyyy-mm-dd
        echo date('Y-n-d',$times)."<br>";//格式yyyy-m-dd
        echo date('Y-m-j',$times)."<br>";//格式yyyy-mm-d
        echo date('m-d-Y',$times)."<br>";//格式mm-dd-yyyy
        function change_date($date_time)
        {
         $max='';
        preg_match_all("/\d+日+/",$date_time,$days);
        preg_match_all('/\d+月+/',$date_time,$months);
        preg_match_all('/\d+年/',$date_time,$year);
        foreach ($days as $value)
        {
         foreach ($value as $day_values)
         {
         $day_len=strlen($day_values);
         }
        }
        
        foreach ($months as $value)
        {
         foreach ($value as $month_values)
         {
         $month_len=strlen($month_values);
         }
        }
        
        foreach ($year as $value)
        {
         foreach ($value as $year_values)
         {
         $year_len=strlen($year_values);
         }
        }
        $new_times=$year_values.$month_values.$day_values;
        $date_times=preg_replace("/[^\d]/","",$new_times);     if($day_len<4 && $month_len>=4)
        {
         $day=11;
        }
        elseif ($day_len>=4 && $month_len<4)
        {
         $day=9;
        }
        elseif($day_len>=4 && $month_len>=4)
        {
         $day=0;
        }
        else 
        {
         $day=20;
        }
        switch ($day)
        {
         case 0:
         return strtotime($date_times);
         break;
         case 9:
         return strtotime($date_times."-169 day");
         break;
         case 11:
         return strtotime($date_times."+11 day");
         //return $date_times;
         break;
         case 20:
         return strtotime($date_times."-9 day");
         break;
        }  
        } 
    ?>[/code]