0

codeigniter のライブラリとして作成したこのクラスがあります

 class Openstack{


function __construct($params = array())
{


    //namespace OpenCloud;

    // note that we have to define these defaults BEFORE including the
    // connection class
    define('RAXSDK_OBJSTORE_NAME','cloudFiles');
    define('RAXSDK_OBJSTORE_REGION','ORD');
    require_once('lib/rackspace.php');

    // these hold our environment variable settings
    define('AUTHURL', 'https://identity.api.rackspacecloud.com/v2.0/');
    define('USERNAME', "#####");
    define('TENANT', "$$$$$");
    define('APIKEY', "asdfasdfasdfasdfasdfasdfasdf");

    // establish our credentials
    $connection = new Rackspace(AUTHURL,
        array( 'username' => USERNAME,
               'tenantName' => TENANT,
               'apiKey' => APIKEY ));


    $ostore = $connection->ObjectStore();...

問題は、次を使用して関数を呼び出すときです。

 public function test_upload(){
    $this->load->library('opencloud/openstack');


    $this->openstack->upload_file("thisworks.pdf", "static/news/10_12.pdf");

}

新しいRackspaceがある場所の上の行を指しているクラスRackspaceが見つからないというエラーが表示されます...

Rackspace.php 内には、Rackspace というクラス名があります。

 class Rackspace extends OpenStack{ ...

なぜ見つからないのかわかりません...ファイルをロードしていることはわかっています。そこに何かをエコーし​​ようとしたところ、表示されたからです....

何が起こっているのか分かりますか?

編集:rackspace.phpファイルの上部には

 namespace OpenCloud; 

私が作成したライブラリ ファイル クラス Openstack にはそれがありません...そこに入れると、「存在しないクラス: Openstack」というエラーが表示されました。

4

0 に答える 0