Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 重力表单将日期转换为Unix并添加一年_Php_Wordpress_Datetime_Unix_Gravityforms - Fatal编程技术网

Php 重力表单将日期转换为Unix并添加一年

Php 重力表单将日期转换为Unix并添加一年,php,wordpress,datetime,unix,gravityforms,Php,Wordpress,Datetime,Unix,Gravityforms,我正在尝试将WordPress Gravity表单中的日期从dmy转换为Unix,通过将下面的内容添加到functions.php中可以很好地工作,但我希望在转换后的日期中添加+1年。我哪里做错了 function rkv_datesubmit_fix2 ($form){ //ACTUAL START DATE FIELD, date field id is 601 in gravity forms $raw_srt = $_POST['input_601']

我正在尝试将WordPress Gravity表单中的日期从dmy转换为Unix,通过将下面的内容添加到functions.php中可以很好地工作,但我希望在转换后的日期中添加+1年。我哪里做错了

  function rkv_datesubmit_fix2 ($form){
        //ACTUAL START DATE FIELD, date field id is 601 in gravity forms
        $raw_srt = $_POST['input_601'];
        $raw_end = $_POST['input_602'];

        // convert dates to unix
        $fix_srt = strtotime ($raw_srt);
        $fix_end = strtotime($raw_end);

            //output to gravity forms field 603 (start date)
            //output to gravity forms field 604 (end date)
        $_POST['input_603'] = $fix_srt;
        $_POST['input_604'] = $fix_end;
    }

add_action('gform_pre_submission', 'rkv_datesubmit_fix2');

如果更改
$fix\u srt=strotime($raw\u srt)至标准时间(“+1年,$raw_srt”)我得到的是1971/1/1,不是重力场601加上一年的原始输入日期。

以下是工作代码:

function rkv_datesubmit_fix2 ($form){
    //ACTUAL START DATE FIELD, date field id is 601 in gravity forms
    $raw_srt = $_POST['input_601'];
    $raw_end = $_POST['input_602'];

    // convert dates to unix
    $fix_srt = strtotime ($raw_srt);
    $fix_end = strtotime($raw_end.' + 1 year');

    //output to gravity forms field 603 (start date)
    //output to gravity forms field 604 (end date)
    $_POST['input_603'] = $fix_srt;
    $_POST['input_604'] = $fix_end;
}

add_action('gform_pre_submission', 'rkv_datesubmit_fix2');

对于将+1年添加到
$fix\u end
中,我们只使用了
strotime($raw\u end.+1年)
。这是实现您想要的结果的最简单方法。

嗨,斯坎普。我对这篇文章做了很多改进,所以如果您有进一步的更改,请刷新您的页面并编辑我的副本,而不是恢复旧版本。谢谢我去回答你的问题,当我看到你改变了你的功能。那里的
$raw\u end
是什么?$raw\u end缺少一行,这是结束日期。它的功能与raw_srt相同,在开始日期和结束日期字段中都添加了12个月,这有点奇怪。如果你想得到帮助,那条线必须在那里。或者我们无法为您提供正确的答案。另外,您想在
$fix\u end
中添加+1年?您可能需要查看。还有,谢谢。让我知道,您想在哪里添加+1年?要
$fix\u end