致命的なエラー: クラス 'NumberFormatter' が見つかりません
P粉817354783
P粉817354783 2023-08-16 16:29:06
0
2
640
<p>私はこれと全く同じコードを長年使用してきましたが、一度も問題はありませんでした。突然動作しなくなりました。 </p> <p>この問題についてインターネットで読んだところ、<code>PHP 5.3 以降</code> をインストールするとともに、<code>PHP intl</code> プラグインをインストールする必要があるようです。両方持っていますが、以下の関数を使用するたびに、「<code>致命的エラー: クラス 'NumberFormatter' が見つかりません」エラーが発生します</code>:</p> <pre class="brush:php;toolbar:false;">function format_item($value) { $format = new NumberFormatter('en_US', NumberFormatter::CURRENCY); return $format->formatCurrency($value, 'AUD'); }</pre> <p>また、これは <code>PHP intl</code> プラグインがインストールされていることを示す <code>php.ini</code> ファイルの一部です。</p> <pre class="brush:php;toolbar:false;">[intl] intl.default_locale = fr_FR ; このディレクティブを使用すると、何らかのエラーが発生したときに PHP エラーを生成できます。 ; intl 関数内で発生します。値は生成されるエラーのレベルです。 ; デフォルトは 0 で、エラーは発生しません。 intl.error_level = E_WARNING</pre> <p><code>php.ini</code> に <code>extension=php_intl.dll</code> も追加しました。これも私のディレクトリにあります。 </p> <p>このエラーが発生するのはなぜですか? </p>
P粉817354783
P粉817354783

全員に返信(2)
P粉409742142

必要なものは次のとおりです:

リーリー

php.ini を変更したり、他に何もする必要はありません。 (PHP 7 を備えた Ubuntu 16.04 でテスト済み)。

ここで最も一般的な答えは、.dll ファイルのコメントを解除するというものですが、Windows サーバーを使用している場合を除き、これでは何も解決されません。

いいねを押す +0
P粉237029457

これは非常に奇妙な問題のようですが、私は次の方法で解決しました。

私は この チュートリアルを通じて Wamp の PHP をアップグレードしました。 php.ini のタイムゾーン設定も更新しました。アップグレードしたらうまくいかなかったので、以前の PHP バージョンに戻したら問題は解決しました。

なぜこれで問題が解決するのかまったくわかりませんが、私にとってはうまくいきました。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート