Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在OctorberCMS插件中使用Omnipay_Php_Laravel_Laravel 4_Omnipay_Octobercms - Fatal编程技术网

Php 在OctorberCMS插件中使用Omnipay

Php 在OctorberCMS插件中使用Omnipay,php,laravel,laravel-4,omnipay,octobercms,Php,Laravel,Laravel 4,Omnipay,Octobercms,我正在开发一个插件,并将使用Omnipay。我做了一项研究,发现了一些将Omnipay库与Laravel as和集成在一起的软件包。我通过以下步骤尝试了这两种方法(全部在插件目录中): 创建composer.json文件并添加以下内容: { "name": "BalanceRecharge Plugin", "email": "webmaster@root.com", "require": { #in this case I'm using barryv

我正在开发一个插件,并将使用Omnipay。我做了一项研究,发现了一些将Omnipay库与Laravel as和集成在一起的软件包。我通过以下步骤尝试了这两种方法(全部在插件目录中):

  • 创建
    composer.json
    文件并添加以下内容:

    {
        "name": "BalanceRecharge Plugin",
        "email": "webmaster@root.com",
        "require": {
            #in this case I'm using barryvdh/laravel-omnipay
            "barryvdh/laravel-omnipay": "0.1.*", 
            "omnipay/omnipay": "*"
        }
    }
    
  • 运行
    composer update
    更新库和依赖项,一切正常

  • “Barryvdh\Omnipay\ServiceProvider”
    添加到提供商:

    'providers' => array_merge(include(base_path().'/modules/system/providers.php'), array(
    
        // 'Illuminate\Html\HtmlServiceProvider', // Example
    
        'System\ServiceProvider',
        'Barryvdh\Omnipay\ServiceProvider',
    )),
    
  • 然后尝试运行命令
    php artisan config:publish barryvdh/laravel omnipay
    ,但出现以下错误:

PHP致命错误:未找到类“Barryvdh\Omnipay\ServiceProvider” 在里面 /var/www/html/alomicuba/vendor/laravel/framework/src/illusted/Foundation/ProviderRepository.php 第157行PHP堆栈跟踪:PHP1。{main}() /var/www/html/alomicuba/artisan:0 PHP 2。需要一次 /var/www/html/alomicuba/artisan:30php3。需要() /var/www/html/alomicuba/bootstrap/start.php:57 php4。 照亮\Foundation\ProviderRepository->load() /var/www/html/alomicuba/vendor/laravel/framework/src/illusted/Foundation/start.php:210 PHP5。照亮\Foundation\ProviderRepository->compileManifest() /var/www/html/alomicuba/vendor/laravel/framework/src/illusted/Foundation/ProviderRepository.php:57 php6。照亮\Foundation\ProviderRepository->createProvider() /var/www/html/alomicuba/vendor/laravel/framework/src/illusted/Foundation/ProviderRepository.php:121


我做错了什么?注册提供商的正确方法是什么?

如果您想在plugin中使用laravel软件包,必须在plugin.php中注册服务提供商和别名

注册插件服务提供商 在Plugin.php的boot()方法中,添加

\App::register('\Third\Party\ServiceProvider')

这是您自动注册第三方服务提供商的方式

注册任何别名 在任何ServiceProvider行下的Plugin.php的boot()方法中,如果需要添加别名,可以使用它来完成

$alias=\illumb\Foundation\AliasLoader::getInstance()->alias('YourAlias','Third\Party\Facade')

检查此链接