我已尝试过所有内容但我无法修复此错误。我通过下载安装PHP然后运行:
brew install php55-mcrypt
我最初用PHP 5.3安装它,然后Laravel抱怨它必须大于5.4。所以一切都搞砸了。
我在MAC 10.7上。有人能帮助我吗?
php -v
PHP Warning: PHP Startup: mcrypt: Unable to initialize module
Module compiled with module API=20090626
PHP compiled with module API=20121212
These options need to match
in Unknown on line 0
PHP 5.5.1 (cli) (built: Aug 14 2013 10:31:02)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
答案 0 :(得分:14)
brew reinstall mcrypt --build-from-source php56-mcrypt --build-from-source
从源代码构建是一个选项,它将强制brew从源代码编译而不是使用瓶子。
答案 1 :(得分:0)
由于您之前安装了PHP(5.3),现在您刚刚安装了较新的版本(5.5.1),因此新的PHP安装可能指向某些旧位置。
查找您正在使用的任何php.ini
,并验证extension_dir
指令。
最后一个建议是重新安装PHP 5.5.1。
答案 2 :(得分:0)
警告是因为php-mcrypt模块版本与服务器中的php版本不匹配。我并不熟悉brew,因为我是Macports的用户,但是根据你的unix ditro,你可以做类似的事情:
=======
yum list installed | grep php55
=======
Sample output:
=======
php55-gd.x86_64 5.2.14-2.el5.art installed
php55-imap.x86_64 5.2.14-2.el5.art installed
php55-mbstring.x86_64 5.2.14-2.el5.art installed
**php55-mcrypt.x86_64 5.1.6-15.el5.centos.1 installed**
php55-mysql.x86_64 5.2.14-2.el5.art installed
=======
我们可以看到与早期版本的PHP相关联的php-mcrypt模块。
如何解决错误?
更新php-mcrypt模块以修复错误。
==
yum update php-mcrypt
==
希望有所帮助