在Joomla组件中根本不执行PHP strotime
我目前正在Joomla中构建一个自定义组件,它从输入表单中获取输入值,然后将它们打包,以便在SOAP请求中发送。 其中一个输入表单元素是日期(出生日期,或其名称在“dob”格式中),需要将其转换为SOAP api将接受的有效日期格式 在接受并准备发送这些表单元素的函数中,我遇到了一个非常奇怪的问题,而当我试图将日期格式更改为SOAP api要处理的有效格式时,PHP函数strotime似乎根本不起作用 以下是处理post元素dob的时间格式的相关函数代码:在Joomla组件中根本不执行PHP strotime,php,jquery,ajax,joomla,strtotime,Php,Jquery,Ajax,Joomla,Strtotime,我目前正在Joomla中构建一个自定义组件,它从输入表单中获取输入值,然后将它们打包,以便在SOAP请求中发送。 其中一个输入表单元素是日期(出生日期,或其名称在“dob”格式中),需要将其转换为SOAP api将接受的有效日期格式 在接受并准备发送这些表单元素的函数中,我遇到了一个非常奇怪的问题,而当我试图将日期格式更改为SOAP api要处理的有效格式时,PHP函数strotime似乎根本不起作用 以下是处理post元素dob的时间格式的相关函数代码: $postVar['dob'] = d
$postVar['dob'] = date("Y-d-m G-i-s", strtotime($_POST['dob']));
die(print_r($postVar['dob']));
当我死掉并按上面所示打印变量以查看结果时,strotime被完全忽略,它不会死掉
表单使用jQuery Datepicker作为date表单元素,下面是函数接收$_POST['dob']的变量输出时的样子
14/03/2013
有人能理解为什么strotime函数在这里没有任何作用而被忽略吗?
谢谢
编辑:如果jQuery datepicker代码有帮助的话,只需在这里添加它
jQuery("#dob").datepicker({dateFormat:'dd/mm/yy', changeMonth: true, stepMonths: 12, showAnim:"slideDown" });
在乔姆拉!,你从来没有直接接触过任何超球体。此外,如果结果可能反映错误情况,请始终检查您得到的结果
$input = JFactory::getApplication()->input;
$dob = $input->get('dob', null, 'string');
$postVar['dob'] = 'invalid';
if (!is_null($dob)) {
$dob = strtotime($dob);
if ($dob > 0) {
$postVar['dob'] = date("Y-d-m G-i-s", $dob);
}
}
如果在那里有一个
die()
语句时它没有死,那么很明显它根本就没有运行那部分代码。奇怪的是,如果我从死中取出strotime,它就会正常工作!可能会起作用:$dob=DateTime::createFromFormat('dd/mm/yy',$input->post->get('dob','string')代码>。不,这似乎也不起作用。这可能与jQuery Datepicker发送给函数的格式有关吗?