maxts / omnipay-bundle
Symfony 的 Omnipay 扩展包
0.2.0
2015-03-31 22:29 UTC
Requires
- php: >=5.4.0
- omnipay/common: ~2.0
- symfony/framework-bundle: ~2.3
Requires (Dev)
- omnipay/omnipay: ~2.0
- phpunit/phpunit: ~3.7
This package is not auto-updated.
Last update: 2024-09-20 18:24:09 UTC
README
这是一个简单扩展包,用于在您的 Symfony 应用程序中实现 Omnipay。
安装
通过 Composer
$ composer require colinodell/omnipay-bundle
在您的 AppKernel.php 中启用扩展包
new ColinODell\OmnipayBundle\OmnipayBundle(),
使用方法
此扩展包提供了一个名为 Omnipay 的新服务。它包含一个方法 get(),该方法返回一个完全配置的网关供您使用
$stripe = $this->get('omnipay')->get('Stripe'); $paypal = $this->get('omnipay')->get('PayPal_Express');
您可以使用这些网关像往常一样。
注意:网关是“缓存的” - 多次调用 get('Some_Gateway') 将始终返回相同的对象。
配置
网关可以在您的 app/config/config.yml 文件中进行配置
omnipay: methods: # Your config goes here
例如,要配置 Stripe 和 PayPal Express 网关
omnipay: methods: Stripe: apiKey: sk_test_BQokikJOvBiI2HlWgH4olfQ2 PayPal_Express: username: test-facilitator_api1.example.com password: 3MPI3VB4NVQ3XSVF signature: 6fB0XmM3ODhbVdfev2hUXL2x7QWxXlb1dERTKhtWaABmpiCK1wtfcWd. testMode: false solutionType: Sole landingPage: Login
注意:您可能需要考虑使用参数而不是直接在 config.yml 中存储凭证。
方法名称应该是您通常传递给 Omnipay::create() 的名称。配置设置因网关而异 - 请参阅 Omnipay 文档中的 配置网关 以获取更多详细信息。
注册自定义网关
可以通过将标签 omnipay.gateway 应用到容器中来注册自定义网关
# services.yml services: my.test.gateway: class: Path\To\MyTestGateway tags: - { name: omnipay.gateway, alias: MyTest } # config.yml omnipay: methods: # Reference the gateway alias here MyTest: apiKey: abcd1234!@#
然后您可以通过其别名获取完全配置的网关
$this->get('omnipay')->get('MyTest');
测试
$ phpunit
贡献
请参阅 CONTRIBUTING 获取详细信息。
安全
如果您发现任何安全问题,请通过电子邮件 colinodell@gmail.com 而不是使用问题跟踪器。
致谢
许可
MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件。