OSX 10.9上的intl和PHP 5.4.24

时间:2014-07-16 07:58:36

标签: php macos xampp

我尝试在预安装的Max OSX 10.9.4 PHP实例(5.4.24)中使用idn_to_ascii()函数。

我阅读了很多Stackoverflow问题,他们大多数人都说:intl是从PHP 5.3开始预编译的,你不需要扩展,它开箱即用。

但是为什么这个PHP实例中的intl函数不可用呢?我刚收到一个

  

致命错误:在第3行的/path/test.php中调用未定义的函数idn_to_ascii()

另外,我在OSX 10.9上用PHP 5.5.x尝试了XAMPP 1.8.3-4,我也得到了

  

致命错误:在第3行的/Applications/XAMPP/xamppfiles/htdocs/test.php中调用未定义的函数idn_to_ascii()

这是OSX的问题还是两个PHP实例都有问题?

3 个答案:

答案 0 :(得分:1)

intl 捆绑与PHP源代码,但必须使用--enable-intl编译时选项启用。这两个PHP安装显然不是这种情况。您可以使用php -i | grep intl进行检查。你可能不得不使用PECL installation method。或者,我建议使用homebrewhomebrew-php tap维护自己灵活的PHP安装。

答案 1 :(得分:0)

问题也出现在Debian 7.9上,你可以用apt-get安装php5-intl包来解决它。

答案 2 :(得分:0)

我的服务器上遇到了同样的问题。与此处提出的解决方案不同,我使用的是PHP版本7.所以我必须安装相应的intl包:

对于PHP 7.1:

sudo apt-get install php7.1-intl

适用于PHP 7.0

sudo apt-get install php7.0-intl