在 Heroku 中部署我的 Laravel 7 应用程序时出现此错误,它仅出现在 Heroku 中,而不出现在我的本地机器 (localhost) 中
Class 'NumberFormatter' not found (View: ...)
服务器详情:
- 英雄联盟
- PHP 7.4.12
- Laravel 框架 7.30.4
最佳答案
NumberFormatter classDocs需要 PHP Internationalization extension (intl
)Docs ,并且此扩展在 Heroku 上内置不可用 Heroku Built-in ExtensionsHeroku Docs .
相反,Heroku 允许您使用 optional extensionsHeroku Docs .
要使用它们,您可以使用 composer 命令来要求它(“ext-intl”):
composer require ext-intl
或者您可以手动将其添加到 require sectionComposer Docs 中的 composer.json
:
{
"require": {
"ext-intl": "*"
}
}
提交文件并将更改推送到 Heroku。在您找到下一个丢失的类之前,错误应该会消失。
这是另一个例子,如果你有一个基于 Composer 的 PHP 项目,那么最好在 composer.json
文件中记录正在使用的扩展。
当那一天到来时,您已经将它们记录在 Composer JSON 中。
像 Heroku 这样的系统也可以从中受益!
关于php - 找不到 Heroku 类 'NumberFormatter',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68150108/