Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.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 如何在提交表单之前替换输入字段中的日期字符串?_Php_Date_Format_Jquery Ui Datepicker - Fatal编程技术网

Php 如何在提交表单之前替换输入字段中的日期字符串?

Php 如何在提交表单之前替换输入字段中的日期字符串?,php,date,format,jquery-ui-datepicker,Php,Date,Format,Jquery Ui Datepicker,我正在使用强大的Forms Pro作为我的联系人表单。 字段中显示的日期格式只能在全局首选项中设置,而不能针对每个字段设置。默认值为mm/dd/yyyy。 单一日期字段具有日历本地化设置,根据从下拉列表中选择的区域设置显示datepicker小部件 问题是我使用不同语言的表单,所以我需要相应地显示日期格式。例如,英语表格的mm/dd/yyyy,意大利语表格的dd/mm/yyyy。 为了解决所有字段只能使用一种日期格式的限制,我通过hook向设置中添加了自定义日期格式,如下所示: add_filt

我正在使用强大的Forms Pro作为我的联系人表单。 字段中显示的日期格式只能在全局首选项中设置,而不能针对每个字段设置。默认值为
mm/dd/yyyy
。 单一日期字段具有日历本地化设置,根据从下拉列表中选择的区域设置显示datepicker小部件

问题是我使用不同语言的表单,所以我需要相应地显示日期格式。例如,英语表格的
mm/dd/yyyy
,意大利语表格的
dd/mm/yyyy
。 为了解决所有字段只能使用一种日期格式的限制,我通过hook向设置中添加了自定义日期格式,如下所示:

add_filter('frm_datepicker_formats', 'add_custom_frm_format');
function add_custom_frm_format($formats) {
   $formats['j F Y'] = 'd MM yy'; //change PHP and Datepicker formats
   return $formats;
}
现在,在Datepicker中选择日期后,我有:

  • 2021年10月9日,输入为英语本地化

  • 9 Ottobre 2021,用于意大利本地化输入

这两个字段的格式保持不变,但至少这样,来自不同国家的用户不会感到困惑

然而,强大的表单插件使用PHP函数
create\u date\u from\u format
将日期转换为DB格式(yyyy-mm-dd), 因此,“2021年10月9日”将在“2021-10-09”中进行验证和转换,而“9 Ottobre 2021”将不进行验证,并从格式创建日期。 PHP函数“从格式创建日期”只接受标准英文名称,如一月、二月等

在提交表单之前,是否有办法将输入字段中的意大利语月份名称“Gennaio、Febbraio等”替换为英语名称,但保留字段中的字符串? 或者我应该换一种方式。。。 FF支持对自定义编码没有帮助。 有人能给我指出正确的方向吗? 任何帮助都会很好,谢谢