有没有人在运行MAMP时遇到了iconv_strlen函数问题?
我已经有一个超时问题,但没有抛出任何异常.我在Zend Framework网站上工作.通过跟踪调试器深入胆量,我将问题跟踪到使用iconv_strlen.它没有被调用任何奇怪的字符串,它是一个简单的功能用来验证一个主机名.
为了验证问题,我尝试了一个简单的iconv_strlen(“test”,“UTF-8”);这导致错误出现 – 浏览器中的无限旋转加载器,但没有错误日志消息,并且该脚本超出最大执行时间.看来这是PHP的这个版本中没有大的.
我的同事发现这篇文章可能会解决这个问题.我在Mac OS X机器上更新到最新的Snow Leopard,即10.6.似乎这是一个已知的错误,如果你自己建立PHP或使用内置的Apple版本或使用端口,那就有一个解决方法.
> Bug #49267 Linking fails for iconv: “Undefined symbols: _libiconv”
> PHP 5.3.0 on Mac OS 10.6 (Snow Leopard) – Fabien Potencier;
05 Nov 2009
长篇小说,你可以深入研究自己的PHP与上面的补丁,但这种打败了MAMP的一点.
最快的解决方案是永远不要使用iconv_strlen()(或任何一个iconv_函数) – 如果您使用Zend Framework,这不是一个选项,否则可以将MAMP还原为使用PHP 5.2.
直到MAMP开始包括PHP源文件,并提供了一种方法来轻松地重新编译与所有必需的库绑定的PHP,这将一定是包的限制. MAMP工作很好,直到你到达需要重新编译PHP的点.当这种情况发生时,简单地使用端口更容易.