使用POST数据进行php字符串到日期的操作

使用POST数据进行php字符串到日期的操作,php,date,Php,Date,我正在将表单中的数据发布到PHP脚本中 除此之外,一切正常 第一个字段是date1,日期写为20140720(2014 7月20日) 第二个字段称为date2 第三个字段称为type 第四个字段称为code 如果$type==6,则将$code更改为14天后的数字 在上面的例子中,$date2将变为20140803(8月3日),比7月20日晚14天。编辑:编辑之后,它就简单了一点: $date2 = strtotime( $date1 . ' +14 days' ); 您可以使用函数。

我正在将表单中的数据发布到PHP脚本中

除此之外,一切正常

  • 第一个字段是
    date1
    ,日期写为
    20140720
    (2014 7月20日)
  • 第二个字段称为
    date2
  • 第三个字段称为
    type
  • 第四个字段称为
    code

如果
$type==6
,则将
$code
更改为14天后的数字


在上面的例子中,
$date2
将变为
20140803
(8月3日),比7月20日晚14天。

编辑:编辑之后,它就简单了一点:

$date2 = strtotime( $date1 . ' +14 days' );

您可以使用函数。它看起来像这样:

$date2 = date( 'F jS', strtotime( $date1 . ' +14 days' ) );
在您的案例中,哪一个会打印:8月3日 您只需添加其余部分:

$date2 = strtotime( $date1 . ' +14 days' ).' '.$date2.', 14 days later than .'$date1

将date1格式更改为Y-m-d以便于处理&然后,就可以很容易地修改天数

<?php
$date1 = $_POST['yearfield'] . "-" . $_POST['monthfield'] . "-" . $_POST['dayfield']; //format like 2000-01-11
date_default_timezone_set('America/Los_Angeles'); //set this timezone
$date = new DateTime($date1);  
$date->add(new DateInterval('P14D')); //this means add 14 days
$date2 = $date->format('Ymd'); //format would be like this

<代码>您可能希望考虑这些代码更改-您的<代码> $type=$POST([类型] ] < /代码>缺少终止符<代码>;<代码>编辑器还建议扩展
if
语句,使其更具可读性。
<?php
$date1 = $_POST['yearfield'] . "-" . $_POST['monthfield'] . "-" . $_POST['dayfield']; //format like 2000-01-11
date_default_timezone_set('America/Los_Angeles'); //set this timezone
$date = new DateTime($date1);  
$date->add(new DateInterval('P14D')); //this means add 14 days
$date2 = $date->format('Ymd'); //format would be like this