8

我已经尝试了一切,但我无法修复此错误。我通过下载它来安装 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
4

3 回答 3

14

brew reinstall mcrypt --build-from-source php56-mcrypt --build-from-source

从源代码构建是一个选项,它将强制 brew 从源代码编译而不是使用瓶子。

于 2015-09-05T14:22:45.610 回答
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

======

希望有帮助

于 2013-09-05T05:49:25.073 回答
0

由于您之前安装了 PHP (5.3),而现在您刚刚安装了较新的版本 (5.5.1),因此新的 PHP 安装可能指向一些旧位置。

查找php.ini您正在使用的任何内容,并验证该extension_dir指令。

最后的建议是重新安装 PHP 5.5.1。

于 2013-08-14T18:59:05.867 回答