致命错误:Class' Aerospike'未找到

时间:2016-02-25 12:57:18

标签: php composer-php aerospike-loader

我尝试加载aerospike php api类但出现错误

$("#grid").data("kendoGrid").dataSource.filter({ field: "YourFiledName", operator: "startWith", value: "A" });

我的代码看起来

Fatal error: Class 'Aerospike' not found

我在做作曲家安装和作曲家更新有什么不对吗?如果您需要更多文件来告诉我。

2 个答案:

答案 0 :(得分:1)

为了使用适用于PHP的Aerospike API客户端,您必须能够编译C代码并在服务器上安装已编译的扩展。

这需要一个额外的已安装软件包包,而不是让你的机器编译东西,并且提供任何这些东西超出了Composer的范围。

所以这个包看起来很无辜,但它不是真正的PHP Composer包。你不能像任何其他包一样使用它 - 所有相关的类如Aerospike都通过扩展注入PHP。

答案 1 :(得分:1)

如果您已经安装了aerospike客户端,则无需执行require "vendor/autoload.php";即可使用扩展程序。

首先在documentation

的任何目录中安装aerospike
git clone https://github.com/aerospike/aerospike-client-php.git
cd src/aerospike
./build.sh

在src / aerospike中安装扩展程序:

make install

使用指令在/etc/php/7.0/cli/conf.d上创建一个aerospike.ini文件:

extension=aerospike.so
aerospike.udf.lua_system_path=/usr/local/aerospike/lua
aerospike.udf.lua_user_path=/usr/local/aerospike/usr-lua

如果您使用的是Apache或Nginx等Web服务器,则需要     将aerospike.ini复制到配置包含目录中     服务器,然后发出正常重启。

⇒  ⇒  ⇒  Verify the Extension  ⇐  ⇐  ⇐
    php -m | grep aerospike