Php salesforce中的日期到达方式不同
我正在使用drupal,我有一个webform,其中有生产日期字段,在该字段中有日历,当我在该字段中输入日期2020-09-30并提交我的表单时,它在salesforce中错误地保存了该字段,如下所示: 2022年6月9日改为2022年,也改变了月份和日期 以下是我在salesforce函数中设置的条件Php salesforce中的日期到达方式不同,php,date,drupal,salesforce,salesforce-communities,Php,Date,Drupal,Salesforce,Salesforce Communities,我正在使用drupal,我有一个webform,其中有生产日期字段,在该字段中有日历,当我在该字段中输入日期2020-09-30并提交我的表单时,它在salesforce中错误地保存了该字段,如下所示: 2022年6月9日改为2022年,也改变了月份和日期 以下是我在salesforce函数中设置的条件 function ublox_salesforce_salesforce_webforms_save_submission_alter(&$fields, $contex
function ublox_salesforce_salesforce_webforms_save_submission_alter(&$fields, $context) {
foreach ($fields as $key => $value) {
if (in_array($key, ["Date_Prototype__c", "Date_Production__c", "NBIOT_Date_of_Field_Trial__c", "NBIOT_Date_Lab_Trial__c"])) {
$fields[$key] = trim($value);
if ($fields[$key] == 'Date_Production__c') {
$fields[$key] = format_date(strtotime($fields['Date_Production__c']), 'medium', 'm-d-Y');
}
}
您可以看到我的“生产日期”的if条件(生产开始日期)
我哪里做错了?我找不到解决办法,请任何人帮我
我还附上了我所在领域的屏幕截图,我将日期定为2020-09-30,但其到达时间与2022年6月9日有所不同
提前感谢这个
格式的日期(strotime($fields['date\u Production\u\u c']),'medium','m-d-Y'的结果是什么
,你能把它写进log或者echo之类的东西吗
Salesforce API预计日期为
2020-09-14
格式(即Y-m-d
?),日期时间为2020-09-14T18:07:30Z
格式。请参见Hey,是的,我已经附加了输出,但它的显示与我在输入字段中输入的显示相同。如果它显示09/30/2020
,那么您在那里有一些东西试图变得聪明,并使用当前用户的区域设置显示它。我的PHP已经生锈了,我从来没有接触过Drupal,但如果函数在格式化程序中有-
,并且有什么东西使`失效,那么您就有问题了。说真的,只需将其格式化为
2020-09-30`。也许“medium”是一个选择不当的参数,当您顺利通过“custom”时,会使用自定义格式化程序?