为了账号安全,请及时绑定邮箱和手机立即绑定

PHP 将日期转换为不同的格式

PHP 将日期转换为不同的格式

PHP
慕后森 2023-11-05 15:48:29
变量value = 06 августа 2020 23:39//俄语月份我需要将日期格式转换为:d-m-Y G:i:s这段代码对我不起作用:$os = '06 августа 2020 23:39';$months = array("января" => "01", "февраля" => "02", "марта" => "03", "апреля" => "04", "мая" => "05", "июня" => "06", "июля" => "07", "августа" => "08", "сентября" => "09","октября" => "10", "ноября" => "11", "декабря" => "12");$os = strtr($os, $months); // echo $os: 06 08 2020 23:39$date = DateTime::createFromFormat('d m Y H:i', $os);$new_date_format = $date->format('d-m-Y G:i:s');return $new_date_format;你能建议一个工作代码吗?我更改了代码,现在它以我需要的格式输出日期,但日期不是在一行中输出,而是在 3 行中输出 - prntscr.com/u8g8x2,这会导致保存数据时出错。有什么办法可以将结果输出到一行中吗?$os = $doc->find('.task__meta')->text();$os = strstr($os,' • ',true);$os = str_replace(',','',$os);$months = array("января" => "01", "февраля" => "02", "марта" => "03", "апреля" => "04", "мая" => "05", "июня" => "06", "июля" => "07", "августа" => "08", "сентября" => "09","октября" => "10", "ноября" => "11", "декабря" => "12");$os = strtr($os, $months);$os1 = explode(" ", trim($os, " "));$d = $os1[0];$m = $os1[1];$Y = $os1[2];$os2 = $os1[3];$G = strstr($os2,':',true);$i = strstr($os2,':',false);$i = str_replace(':','',$i);$s = ':00 +0300';$date = $Y.'-'.$m.'-'.$d.' '.$G.':'.$i.$s;return $date;
查看完整描述

2 回答

?
守着星空守着你

TA贡献1799条经验 获得超8个赞

您需要使用 PHP 函数来返回输出。在这种情况下,代码会是这样的,


myCustomFormat('06 августа 2020 23:39');


function myCustomFormat($date){

  $months = array("января" => "01", "февраля" => "02", 

  "марта" => "03", "апреля" => "04", "мая" => "05", "июня" => "06", 

  "июля" => "07", "августа" => "08", "сентября" => "09",

  "октября" => "10", "ноября" => "11", "декабря" => "12");

  $os = strtr($date, $months); // echo $os: 06 08 2020 23:39

  $date = DateTime::createFromFormat('d m Y H:i', $os);

  $new_date_format = $date->format('d-m-Y G:i:s');

  return $new_date_format;

}


查看完整回答
反对 回复 2023-11-05
?
喵喔喔

TA贡献1735条经验 获得超5个赞

当使用解析器模块将 CMS Drupal 7 中材料的“创建日期”字段的数据导入到节点时,此代码适用于我。


$os = $doc->find('.task__meta')->text();

$os = strstr($os,' • ',true);

$os = str_replace(',','',$os);

$months = array("января" => "01", "февраля" => "02", 

"марта" => "03", "апреля" => "04", "мая" => "05", "июня" => "06", 

"июля" => "07", "августа" => "08", "сентября" => "09",

"октября" => "10", "ноября" => "11", "декабря" => "12");

$os = strtr($os, $months);

$os1 = explode(" ", trim($os, " "));

$d = $os1[0];

$m = $os1[1];

$Y = $os1[2];

$os2 = $os1[3];

$G = strstr($os2,':',true);

$i = strstr($os2,':',false);

$i = str_replace(':','',$i);

$date = date("d-m-Y G:i:s", mktime(date($G), date($i), 0, date($m), date($d), date($Y)));

return strtotime($date);


查看完整回答
反对 回复 2023-11-05
  • 2 回答
  • 0 关注
  • 84 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信