php里面使用下面的语句
$redis->setOption( Redis::OPT_SERIALIZER, Redis::SERIALIZER_IGBINARY );老是出现这个错误,应该是编译的时候没有启用igbinaryFatal error: Undefined class constant 'SERIALIZER_IGBINARY'
先安装的phpredis没有加--enable-redis-igbinary,之后才安装了igbinary,然后重新编译了phpredis,如下:
./configure --enable-redis-igbinary -with-php-config=/usr/local/php/bin/php-config编译成功了,也在php.ini里面加了扩展,重启了怎么就是会出现上面的错误对编译不熟悉,谁知道怎么编译才能让phpredis支持igbinary

解决方案 »

  1.   

    不需要igbinary的,你这个是没指定序列化工具
    configure的时候--with-serializer这个可选项看看
    configure --help应该会有
      

  2.   

    没有igbinary是不能用这个序列化选项的“Redis::SERIALIZER_IGBINARY”configure里面没有--with-serializer,只有--enable-redis-igbinary才能支持igbinary
      

  3.   

    反复编译了N次,终于成功。重新下了份源码包,然后configure  make 就可以,看来还是因为一开始没有加上--enable-redis-igbinary导致源码包里面的配置出错了、怎么编译都加不上igbinary。看来有时候编译用过的源码包不能重复使用。
      

  4.   

    你可以make clean,清除中间代码,然后重新configure , make的