在PHP中使用substr_Replace替换字符串之间的字符

在PHP中使用substr_Replace替换字符串之间的字符,php,Php,我想用mm dd yy格式替换日期字符串的月号 <?php $db_currentDate = '2015-01-26'; $month = '03'; echo substr_replace($db_currentDate,$month, 5,6); ?> 但是这个输出只有2015-03,我希望这个输出是2015-03-26。 有人能帮我吗?谢谢请更改此行: echo substr_replace($db_currentDate, $mon

我想用mm dd yy格式替换日期字符串的月号

<?php

    $db_currentDate = '2015-01-26';
    $month = '03';
        echo substr_replace($db_currentDate,$month, 5,6);

?>

但是这个输出只有2015-03,我希望这个输出是2015-03-26。 有人能帮我吗?谢谢

请更改此行:

echo substr_replace($db_currentDate, $month, 5, 6);
为此:

echo substr_replace($db_currentDate, $month, 5, 2);
                                              //^ See here
参考手册中的
substr\u replace()

您可以看到以下报价:

长度 如果给定且为正,则表示要替换的字符串部分的长度


正则表达式版本

echo preg_replace('/(\d+)-(\d+)-(\d+)/i', '${1}-03-$3', $db_currentDate);

或者你也可以试试,这总是管用的

<?php

    $db_currentDate = '2015-01-26';
    $month = '03';
    $db_newDate_array = explode("-",$db_currentDate);
    $db_newDate = $db_newDate_array[0]."-".$month."-".$db_newDate_array[2];
    echo $db_newDate;

?>


如果有帮助,请告诉我:)

字符串:“03”(长度=2)
这是解决此问题的一个非常漫长的过程