4

国際化されたデータの場合\ResourceBundle、PHP の「intl」拡張のクラスを使用すると便利です。

拡張機能を実行して (PHP 5.3.4; Windows)、ICU Data Library Customizer * を使用して .dat ファイルを作成しましたが、リソース バンドル クラスから期待される結果が得られません。

今、私はこれを行います

$bundle   = '/var/www/libs/icudt48l.dat';
$resource = new \ResourceBundle('en_US', $bundle, true);
var_dump($resource, is_file($bundle)); //--> NULL, TRUE

問題は$resource、エラーが発生せずに NULL を返すことです。どうしたの?

*(最後の 2 つのデータ セクションのみがチェックされ、基本データは常に含まれます。ICU4C としてエクスポートしました)

4

2 に答える 2

1
<?php
$b = '/var/www/libs/icudt48l';
$r = new \ResourceBundle('en_US', $b, true);
var_dump($r instanceof \ResourceBundle); //-> TRUE

動作させるには、.dat 拡張子を残す必要があります。

于 2011-06-08T07:13:37.200 に答える
0

試す$resource = resourcebundle_create('en_US',$bundle,true);

于 2011-06-06T19:26:04.663 に答える