ResourceBundle возвращает NULL без каких-либо ошибок

Для интернационализированных данных было бы здорово работать с \ResourceBundle класс из расширения PHP "intl".

Я запустил расширение (PHP 5.3.4; Windows) и создал файл.dat с помощью ICU Data Library Customizer*, но я не получил ожидаемого результата от класса комплекта ресурсов.

Теперь я делаю это

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

Проблема в $resource возвращает NULL без каких-либо ошибок. В чем дело?

* (Были проверены только последние два раздела данных - базовые данные всегда включены - и я экспортировал их как ICU4C)

2 ответа

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

нужно оставить расширение.dat, чтобы оно работало

Пытаться $resource = resourcebundle_create('en_US',$bundle,true);

Другие вопросы по тегам