我以前用过ci-merchant,但从所有的东西来看,它的"V2"现在是omnipay。我使用codeigniter,我甚至在努力让这个例子工作。
我已经安装了omnipay没有问题,在我的控制器中有以下内容:
use OmnipayCommonGatewayFactory;
class Homepage extends BC_basecontroller {
public function index()
{
$gateway = GatewayFactory::create('PayPal_Express');
$gateway->setUsername('adrian');
$gateway->setPassword('12345');
}
}
下面的例子:https://github.com/adrianmacneil/omnipay
但是我得到错误:
PHP Fatal error: Class 'OmnipayCommonGatewayFactory' not found in......
有人知道如何让它在CI中工作吗?
我不知道你是如何安装Omnipay的,但是你需要使用Composer来加载这些类,然后才能使用它们。
因此,按照Omnipay安装说明,将其添加到根目录下的composer.json
文件中:
{
"require": {
"omnipay/omnipay": "*"
}
}
然后安装文件:
$ curl -s http://getcomposer.org/installer | php
$ php composer.phar update
现在,如果您正在使用CodeIgniter,则需要将其设置为包含编写器自动加载器。基本上,只需将这一行添加到index.php
文件的顶部:
require_once __DIR__.'/vendor/autoload.php';
这里还有一个关于使用Composer与CodeIgniter的教程,您可能会发现有帮助:http://philsturgeon.co.uk/blog/2012/05/composer-with-codeigniter
我有同样的错误,并通过加载vendor/autoload.php
application/core/CodeIgniter.php
之前修复它