如何使用 PHP 将时间格式化为 AP 样式?

How can you format times into AP style with PHP?

我有时需要使用 PHP 将格式格式化为 AP 样式。

AP style dictates 当时间是整点时,应该省略“:00”。 a.m./p.m.

中应使用句点

例如:1 p.m。和 3:30 a.m.

据我所知,PHP 没有提供执行此操作的内置方法。我能想到的唯一方法是通过一系列 if 语句,但这对我来说似乎有点笨拙。

有更好的方法吗?

您可以先转换为字符串,然后str_replace更正格式吗?

function apStyle($date){

  $date = strftime("%l:%M %P", strtotime($date));

  $date = str_replace(":00", "", $date);
  $date = str_replace("m", ".m.", $date);

  return $date;

}