2014-09-12 132 views
0

我正在使用codeigniter框架2.1.0(是的,我知道這是舊的)構建的遺留項目。我正試圖將Illuminate Queue系統集成到CI中,並且做得非常好。我遇到的問題是當偵聽命令腳本從隊列中抽取作業並調用該類並在該類上執行fire方法時使用CI項目。php在框架外部使用codeigniter框架組件

是否有可能在被調用的東西中使用Codeigniter項目,並命名空間?

這裏是命名空間區域的文件夾結構:

application 
    MyApp 
     Queues 
      Listeners 
       Exports 
        Exports.php 

這裏是文件:

<?php namespace MyApp\Queues\Listeners\Exports; 

use Aws\S3\S3Client; 
use League\Flysystem\Filesystem; 
use League\Flysystem\Adapter\AwsS3 as Adapter; 
use League\Flysystem\AdapterInterface; 

class Exports 
{ 

    public function __construct() 
    { 
     /* Load CI */ 
     $this->ci = & get_instance(); 
    } 

    public function fire($job, $data) 
    { 
     // Process job 
     $job->delete(); 
    } 

} 

,這是它得來的錯誤消息:

PHP Fatal error: Call to undefined function MyApp\Queues\Listeners\Exports\get_instance() 

我知道這是因爲核心/ Codeigniter.php文件沒有被加載,因爲它是一個運行的CL命令在我的本地服務器的後臺,並沒有通過打開框架的典型路線。

是我問的可能嗎?讓我知道你是否需要任何進一步的信息。

謝謝!

回答