问题标签 [intl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
8153 浏览

php - 在山狮上安装 php intl 扩展

我正在尝试安装 rubedo cms,但在 php 应用程序中出现错误:

这些是我安装扩展程序所采取的步骤

添加

然后

0 投票
1 回答
304 浏览

php - 带有某些行尾的 grapheme_strlen 函数的奇怪行为

谁能解释strlenPHP 的 intl 扩展中 Unicode 函数的这种奇怪行为?

似乎grapheme_strlen将“\r\n”(CR LF,它们是用于 Windows 上的行分隔的两个单独的代码点)计算为单个字素,考虑到函数的名称,这可能是相当合理的,但它只有在行结尾前面有一个非 ASCII 字符。为什么?

0 投票
0 回答
268 浏览

php - HipHop for PHP 是否支持 intl (Unicode) 扩展?

我正在考虑将我的代码移到 HipHop for PHP 上,但找不到 HipHop 是否支持 intl 扩展的问题的答案,这是我的代码处理 Unicode 文本所必需的。

另外,我在哪里可以找到 HipHop 的一般限制列表?

0 投票
1 回答
305 浏览

php - 如何在 PHP 5.3 中实现来自 PHP 5.5 的 ICU MessageFormatter 命名参数支持

在 PHP < 5.5 中,不支持具有命名参数的 Intl MessageFormatter 字符串。对于某些语言和字符串,这会导致翻译字符串非常难以理解。

PHP 5.4 ( PHP < 5.5 )

与 PHP 5.5 命名参数对比

我们的软件必须支持从 5.3 -> 到最新的 PHP 版本,但我想让翻译人员的工作更轻松。

任何人都可以提出一种在 PHP < 5.5 上实现 MessageFormatter 命名参数的方法吗?

0 投票
2 回答
3527 浏览

symfony - intl and icu configuration

I've been working on a local development machine running Ubuntu 12 developing a Symfony2.3.5 application.

All works well, until I uploaded the code and came across this:

The server is currently running the following:

In WHM I've installed intl via the EasyApache installer, yet I'm still getting this error.

This installed ICU 3.6. My development version is 4.8.1, so about 10 years newer.

Is the ICU version the problem here? It's the only thing I can see.

The application I've built is en-only. It does not need to be in any other language other than English (UK).

Does anyone have any ideas / fixes for this?

Thanks

0 投票
1 回答
656 浏览

php - PHP 5.5' intl extension 和 PECL intl package 是否来自相同的源代码?

最近我不得不从 PHP 5.5 的本机 intl 扩展转移到 intl PECL 包,以保持 intl/ICU 最新。但是现在我想知道我的 PHP 代码库中的 intl 代码的行为是否完全保持不变。我的代码库几乎使用了每个 intl 类和函数,因此对所有这些类和函数都运行测试并不可行。

因此有一个简单的问题,PHP 5.5' intl 扩展和 PECL intl 包是否源自相同的源代码?

0 投票
1 回答
1702 浏览

php - NumberFormatter::formatCurrency() 忽略 MIN_FRACTION_DIGITS

我想使用 PHP 的 Intl 的 NumberFormatter 类以人类可读的格式显示价格。我们的项目需要什么:

  • CLDR 数字模式、货币和分隔符将需要通过我们的代码进行配置,而不是默认为 Intl/ICU 所知道的。
  • 我们的应用程序将处理小数。NumberFormatter 应该显示我们传递给它的任何小数。

但是,在尝试使用不同的配置以找到适合我们项目的确切组合时,我注意到一些我无法解释的效果。以下代码片段中的三个格式化程序几乎相同。与第一个相反,第二个使用欧元而不是美元,第三个设置了货币符号。第一个格式化程序的输出与我预期的一样,但是当我更改货币或设置货币符号时,MIN_FRACTION_DIGITS 属性将被忽略并且符号永远不会更改。

Unicode CLDR 数字模式文档的通用数字下的第一行描述了在解析货币模式时,模式的小数部分中的两个零需要用应用程序认为合适的数字替换。这里的应用程序是 ICU(PHP 用于此的 C 库),MIN_FRACTION_DIGITS 属性的作用是让我覆盖第一个示例中的默认行为,但不能覆盖第二个或第三个示例。

有人可以解释一下这种看似随机的行为变化吗?如果您需要任何其他信息,请告诉我。

0 投票
2 回答
5694 浏览

php - 如何让作曲家识别国际 php 扩展

我正在尝试安装一些 symfony 包来创建本教程中的管理工具:http ://www.ens.ro/2012/07/13/symfony2-jobeet-day-12-the-admin-bundle/

我正在使用 symfony 2.3.* 并且正在使用 composer 作为我的依赖项,如下所述:无法使用 composer 设置奏鸣曲

但是当我尝试按照上述作曲家文件(php composer.phar update)中的描述更新我的 symfony buid 时,我收到此错误:

  • sonata-project/intl-bundle dev-master 的安装请求 -> 可由 sonata-project/intl-bundle[dev-master] 满足。
    • sonata-project/intl-bundle dev-master 需要 ext-intl * -> 您的系统中缺少请求的 PHP 扩展 intl。

现在我知道安装了 php intl 扩展,因为它显示在我的 info.php 文件中(如图所示):http: //johnpaulwhatnow.com/intl.png

那么为什么 composer/symfony 认为没有安装 intl 扩展?

规格:Mamp| php 5.4.10| symfony 2.3.6

编辑:我确实在我的 php 错误日志中发现了这个错误:

[2013 年 10 月 24 日 14:05:11 America/Chicago] PHP 警告:PHP 启动:无法加载动态库 '/Applications/MAMP/bin/php/php5.4.10/lib/php/extensions/no-debug- non-zts-20100525/intl.so' - dlopen(/Applications/MAMP/bin/php/php5.4.10/lib/php/extensions/no-debug-non-zts-20100525/intl.so, 9): 符号未找到:_zend_new_interned_string 引用自:/Applications/MAMP/bin/php/php5.4.10/lib/php/extensions/no-debug-non-zts-20100525/intl.so 预期在:/Applications/MAMP/ 中的平面命名空间bin/php/php5.4.10/lib/php/extensions/no-debug-non-zts-20100525/intl.so 在 Unknown on line 0

解决了

我不得不告诉我的 CLI 使用安装了 intl.so 的 mamp 的 php。我通过创建别名来做到这一点: alias phpmamp='/Applications/MAMP/bin/php/php5.4.19/bin/php'

然后运行我需要的命令: phpmamp composer.phar update --prefer-dist

谢谢您的回答!

0 投票
2 回答
1166 浏览

php - 升级到 Mavericks 后无法在 Apache 上加载任何 php 扩展

在升级到 Mavericks 并重新安装两者intlapc使用 brew 后,我仍然无法加载任何 php 扩展(特别是这两个)。
我不断收到以下错误,不知道如何从那里移动:

2013 年 10 月 30 日星期三 18:19:15] [通知] Apache/2.2.24 (Unix) PHP/5.4.17 DAV/2 mod_ssl/2.2.24 OpenSSL/0.9.8y mod_perl/2.0.7 Perl/v5.16.2 已配置-- 恢复正常操作 [Wed Oct 30 18:23:35 2013] [notice] 捕获 SIGTERM,正在关闭 [Wed Oct 30 18:23:36 2013] [warn] Init: Session Cache is not configured [hint: SSLSessionCache] httpd:无法可靠地确定服务器的完全限定域名,使用 Julien.local 作为 ServerName PHP 警告:PHP 启动:无法加载动态库 '/usr/lib/php/extensions/no-debug-non-zts-20090626/ intl.so' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20090626/intl.so, 9):在第 0 行的未知中找不到图像 PHP 警告:PHP 启动:无法加载动态库 '/usr/lib/php/extensions/no-debug-non-zts-20090626/apc.so'- dlopen(/usr/lib/php/extensions/no-debug-non-zts-20090626/apc.so, 9): 在第 0 行的未知中找不到图像

你知道这可能来自哪里吗?

0 投票
2 回答
2954 浏览

php - Symfony config.php 一直要求启用 intl 扩展,尽管它已启用?

我遇到了这个问题,它准确地说明了我的问题,除了我使用的是 Wamp,而不是 Xampp。

Symfony 2: Install and enable the intl extension

尽管我通过 Wamp 下拉菜单启用了 php_intl 扩展,并确保该扩展没有在我的php.ini配置文件中被注释掉,但 Symfony 只是一直建议我启用intl扩展。

我访问了已接受问题中的链接:

http://php.net/manual/en/intl.requirements.php

仍然没有运气。我访问过ICU Homepage,甚至尝试过download it,然后我只是不知道要下载什么文件或要遵循什么链接。

我想要一个能给我指出正确方向的人。我对 PHP 很陌生(只用它开发了两个网站),并且是 Symfony 的初学者。而且我也无法理解 Pearl、PECL、Composer 等的所有这些技巧。我完全迷失了方向。

谢谢你的帮助。