无法使用 Carbon formatLocalized 方法返回本地化的 AM/PM 时间格式?

Moh*_*mel 2 php laravel php-carbon laravel-5.8

我想返回阿拉伯本地时间,就像这样

\n\n
    \n
  • 9:00\xd8\xb5
  • \n
\n\n

所以我在 AppServiceProvider 类的 boot 方法中设置 Carbon 区域设置

\n\n
class AppServiceProvider extends ServiceProvider\n{\n    /**\n     * Register any application services.\n     *\n     * @return void\n     */\n    public function register()\n    {\n        //\n    }\n\n    /**\n     * Bootstrap any application services.\n     *\n     * @return void\n     */\n    public function boot()\n    {\n\n        Carbon::setLocale(config('app.locale'));\n    }\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后使用 Carbon 解析从数据库中获取的时间,并使用 formatLocalized 方法和 format 来显示小时和分钟 \n像这样

\n\n
$time = Carbon::parse('09:00:00')->formatLocalized('%I:%M %p');\n
Run Code Online (Sandbox Code Playgroud)\n\n

但它返回的时间是这样的

\n\n
    \n
  • 9:00 PM
  • \n
\n\n

有什么办法可以实现这一点吗?

\n

Moh*_*mel 5

使用 isoFormat 方法进行深入搜索后实现我想要的

\n\n
$time = Carbon::parse('09:00:00')->isoFormat('h:mm a');\n
Run Code Online (Sandbox Code Playgroud)\n\n

那么输出将是

\n\n
    \n
  • ** 9:00 \xd8\xb5**
  • \n
\n