我的 php -v
PHP 7.1.15-1+ubuntu14.04.1+deb.sury.org+2 (cli) (built: Mar 6 2018 11:51:39) ( NTS ) 版权所有 (c) 1997-2018 PHP Group Zend 引擎 v3.1.0,版权所有 (c) 1998-2018 Zend Technologies 使用 Xdebug v2.6.0,版权所有 (c) 2002-2018 Derick Rethans 使用 Zend OPcache v7.1.15-1+ubuntu14.04.1+deb.sury.org+2,版权所有 (c) 1999-2018 Zend Technologies
我已经尝试了 pecl 的方法。
sudo pecl install redis
sudo service php7.1-fpm restart
还有一种手动的方式,可以从https://github.com/phpredis/phpredis获取。
phpize
./configure [--enable-redis-igbinary]
make && make install
我确保放置了 <\p> 标签。
extension=/usr/lib/php/20170718/redis.so
当我运行
echo phpinfo();
时,将内容添加到php.ini文件中,如下所示。例如:
/etc/php/7.1/cli/php.ini
当我运行内置的Web服务器时,我会遇到以下问题:
奇怪的是,PHPStorm自动完成了PHP Redis类。PHP警告:PHP启动时无法加载动态库'/usr/lib/php/20170718/redis.so' - /usr/lib/php/20170718/redis.so:未定义符号:zend_empty_string,位于未知行0
$redis = new \Redis();
$redis->connect('127.0.0.1', 6379);
我可以点击进入Redis类并查看它是否正确。我想知道这是不是版本差异?也许是因为我使用的是32位?另一个奇怪的事情是,如果我只是输入,页面就会崩溃。
extension=redis.so
在
php.ini
中,似乎正在寻找旧版本的构建。
PHP启动:无法加载动态库'/usr/lib/php/20160303/redis.so' - /usr/lib/php/20160303/redis.so:无法打开共享对象文件:在未知位置的第0行
当我运行时
sudo apt-get install php-redis
安装了Redis扩展之后,虽然没有启动错误显示,但是网页仍然显示一个
Class 'Redis' not found
我还注意到的一件事是,在Apache中没有出现错误,并且可以找到这个类。但是当我运行php内置的web服务器时,会出现未找到的错误。