2016-03-27 23 views
0

我正在嘗試爲該名稱空間調用類'evseevnn \ Cassandra \ Database',但沒有成功。爲此,我依靠一個類似的案例,在我得到它的同一架構本身。類'evseevnn Cassandra Database'找不到

架構如下,

myproject\ 
    | 
    application\ 
     | 
     core\ 
      controller.php 
    ---------- 
    ---------- 
     | 
     vendor\ 
      | 
      evseevnn\ 
       | 
       cassandra\ 
        | 
        src\ 
         Database.php 

這是Controller.php這樣文件的代碼段,

use \evseevnn\Cassandra\Database as Database; 
//require '../vendor/src/evseevnn/cassandra/Database.php'; 

class Controller 
{ 

    public $db = null; 

    public $model = null; 

    function __construct() 
    { 
     $this->openDatabaseConnection(); 
     ...... 
    } 

    private function openDatabaseConnection() 
    { 
     $nodes = [ 
      DB_HOST 
     ]; 

     $this->db = new Database($nodes, DB_DEFAULT_KEYSPACE); 
     $this->db->connect(); 
    } 

    ....... 
    ....... 
} 

和database.php中文件將如下所示,

namespace evseevnn\Cassandra; 

use ...... 
use ...... 

class Database { 

    ...... 
    ...... 
} 

作爲相同的體系結構並部署在同一個WAMP服務器中,它不起作用。我應該如何解決它?

+1

您是否需要隨時添加Composer自動加載器? – Chris

+0

是的,我在前面的例子中是這麼做的。這次我下載了zip文件,我解壓縮並部署到應用程序中。我一直在使用谷歌搜索,我還沒有找到一種方法來使用作曲家的這種情況。這是在GitHub上的驅動程序php的鏈接,https://github.com/evseevnn/php-cassandra-binary – oggie0563

+0

好吧,所以如果你不使用作曲家,你不需要'包括'相關的PHP文件? – Chris

回答

0

你有作曲家嗎?

如果......是的..

require_once 'vendor/autoload.php'; 

你的PHP版本?

命名空間是隻啓用PHP 5.3+

0

這裏是我用來安裝驅動程序的composer.json文件,

{ 
    "name": "root/testclient", 
    "require": { 
     "evseevnn/php-cassandra-binary": "dev-master" 
    }, 
    "authors": [ 
     { 
      "name": "Evseev Nikolay", 
      "email": "[email protected]" 
     } 
    ] 
} 

的Controller.php這樣的文件如下所示,

require APP . '/vendor/autoload.php'; 
use evseevnn\Cassandra\Database as Database; 

class Controller 
{ 

    ------ 
    ------ 

    private function openDatabaseConnection() 
    { 
     $nodes = [ 
      DB_HOST 
     ]; 

     $this->db = new Database($nodes, DB_DEFAULT_KEYSPACE); 
     $this->db->connect(); 
    } 

    ------ 
} 

這對我來說很好。

相關問題