是否可以覆盖symfony/src/Symfony/Component/Intl/Resources
下的json数据?例如,在data/languages/en.json
中,我想更改"zh": "Chinese"
更具体地"zh": "Mandarin Chinese"
。
答案 0 :(得分:1)
我不是Symfony的专业人士,但我得到了同样的问题,对我来说,我找到了一个有效的解决方法。我没有在表单中使用它,我只用它来显示。
我确实创建了一个名为Country的模型来访问和操作RegionBundle:
namespace AppBundle\Model;
use Symfony\Component\Intl\Data\Bundle\Reader\BufferedBundleReader;
use Symfony\Component\Intl\Data\Bundle\Reader\BundleEntryReader;
use Symfony\Component\Intl\Data\Bundle\Reader\JsonBundleReader;
use Symfony\Component\Intl\Intl;
use Symfony\Component\Intl\ResourceBundle\RegionBundle;
class Country
{
public static function getCountryName($countryCode, $locale='de')
{
$test = new RegionBundle(
__DIR__.'/../Resources/Intl/data'.'/'.Intl::REGION_DIR,
new BundleEntryReader(new BufferedBundleReader(
new JsonBundleReader(),
Intl::BUFFER_SIZE
)),
Intl::getLocaleBundle()
);
return $test->getCountryName($countryCode, $locale);
}
}
从控制器,我可以用:
打电话给他们Country::getCountryName('AF')
也许这不是最先进的"方法,但我花了几个小时搜索另一个解决方案 - 但没有找到任何可用于我的方法。
答案 1 :(得分:0)
您是否尝试在 app / Resources / data / languages / en.json 下复制该文件,而不是在那里进行更改?
另外不要忘记清除缓存