Undefined class constant 'SERIALIZER_IGBINARY' 解决方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Undefined class constant 'SERIALIZER_IGBINARY' 解决方法相关的知识,希望对你有一定的参考价值。

问题背景:今天在新项目中调用了个发短信的接口,该接口是rpc封装好的一个服务,代码调用了\Redis::SERIALIZER_IGBINARY,本来在本地好好的,发到alpha环境报

Undefined class constant ‘SERIALIZER_IGBINARY‘,Google了下发现是少了个igbinary扩展,因为我本地是装好了的,所以本地正常运行,下面是解决方法 。

解决方法:

1、安装igbinary扩展

1 wget http://pecl.php.net/get/igbinary-1.2.1.tgz
2 tar zxvf igbinary-1.2.1.tgz
3 cd igbinary-1.2.1
4 /usr/local/php/bin/phpize
5 ./configure --with-php-config=/usr/local/php/bin/php-config
6 make
7 make install

2、重新编译phpredis扩展

直接删除phpredis目录,重新下载编译

1 wget http://download.redis.io/releases/redis-2.6.14.tar.gz
2 tar zxvf redis-2.6.14.tar.gz
3 cd redis-2.6.14
4 /usr/local/php/bin/phpize
5 ./configure --enable-redis-igbinary --with-php-config=/usr/local/php/bin/php-config
6 make
7 make install

3、php.ini加载扩展

 1 vim /usr/local/php/etc/php.ini 2 加上: 3 extensions=igbinary.so (加载redis 扩展之前) 4 extensions=redis .so 

4、重启配置文件

 1 /etc/init.d/nginx reload 2 /etc/init.d/php-fpm restart 

再重新访问,success

 

以上是关于Undefined class constant 'SERIALIZER_IGBINARY' 解决方法的主要内容,如果未能解决你的问题,请参考以下文章

PHP: Use of undefined constant ***问题

php书写不规范Notice: Use of undefined constant memory_limit

Use of undefined constant WP_ADMIN - assumed ‘WP_ADMIN‘

homestead的laravel项目错误:Use of undefined constant JSON_INVALID_UTF8_SUBSTITUTE - assumed ‘JSON_INVAL(代

Class文件中的常量

JVM 运行时常量池(Runtime Constant Pool)