郁闷,不知道
不过我知道你可以把日期存成int类型
然后想要什么格式要什么格式

解决方案 »

  1.   

    用字符串进行替换.
    2.先将转为英文的,得到它的时间的unix表示.再用date进行格式化.
      

  2.   

    你可以先把“2004 九月 23 10:21”用$temp=explode(' ','2004 九月 23 10:21')分开。然后判断数组的第二个元素,用switch语句判断一下。把“九月”转换成09,然后连接字符串就可以了。呵呵,不知道别人还有什么更好的办法。请高手多指教。
      

  3.   

    先str_replace字符串替换,然后使用strtotime()函数
      

  4.   

    给你一段代码作为参考...
    <?php
    $str = '2004 九月 8 20:55';
    $str_tmp = explode(' ',$str);
    $arr_tmp = array('一','二','三','四','五','六','七','八','九','十','十一','十二');
    if (strlen($str_tmp[2]) < 2)
      $str_tmp[2] = '0'.$str_tmp[2];
    while (list($key,$value) = each($arr_tmp))  {
      $tmp = $key+1;
      if ($value.'月' == $str_tmp[1])  {
        if ($key < 9)
          $str_tmp[1] = '0'.$tmp;
        else
          $str_tmp[1] = $key+1;
      }
    }
    $str_rslt = $str_tmp[0].'-'.$str_tmp[1].'-'.$str_tmp[2].' '.$str_tmp[3];
    echo $str_rslt;  //2004-09-08 20:55
    ?>
      

  5.   

    $d = "2004 九月 23 10:21";function foo($v) {
      $tmp = array('一','二','三','四','五','六','七','八','九','十','十一','十二');
      return sprintf("-%02d-",array_search($v,$tmp)+1);
    }echo preg_replace("/ (.+)月 /e","foo('$1')",$d);你的这个日期应该是从sql server中读到的,你应该在读取时进行转换
    SELECT convert(char,你的日期字段,120) ....
      

  6.   

    1.2004 九月 23 10:21
    2.2004-09-23 10:21
    把1定义为字符串,然后用strsub来取相应的值,然后再传给2。
    格式如:$year-$month-$day $time ;