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

时间:2015-01-26 03:02:13

标签: 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 。 谁能帮我这个?感谢

3 个答案:

答案 0 :(得分:3)

只需更改此行:

echo substr_replace($db_currentDate, $month, 5, 6);

到此:

echo substr_replace($db_currentDate, $month, 5, 2);
                                              //^ See here

作为手册中对substr_replace()的引用:http://php.net/manual/en/function.substr-replace.php

你可以看到这句话:

  

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

答案 1 :(得分:0)

或者你可以试试这总是有效的

<?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;

?>

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

答案 2 :(得分:-1)

正则表达式版本!

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