$date = preg_replace("/(\d{4})(\d{2})(\d{2})(\d{2})/", "$1-$2-$3-$4", $str);

解决方案 »

  1.   

    $date = preg_replace("/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/", "$1-$2-$3-$4-$5-$6", $str);
      

  2.   

    告诉你一个最笨方法就是截取字符:
    <?php
    $time = "20080422120021";
    $str1 = substr($time,0,4);
    $str2 = substr($time,4,2);
    $str3 = substr($time,6,2);
    $str4 = substr($time,8,2);
    $str5 = substr($time,10,2);
    $str6 = substr($time,12,2);
    echo ($str1."-".$str2."-".$str3." ".$str4."-".$str5."-".$str6);
    ?>
      

  3.   

    嗯嗯,以上方法都对,昨天看到一种方法是用
    date_format参考
    http://www.php.net/manual/en/function.date-format.php