我试图打电话给班级' 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服务器中,它不起作用。我该怎么做才能解决它?
答案 0 :(得分:0)
你有作曲家吗?
如果......是..
require_once 'vendor/autoload.php';
您的PHP版本是什么?
命名空间仅启用PHP 5.3 +
答案 1 :(得分:0)
这是我用来安装驱动程序的composer.json文件,
{
"name": "root/testclient",
"require": {
"evseevnn/php-cassandra-binary": "dev-master"
},
"authors": [
{
"name": "Evseev Nikolay",
"email": "evseevnn@gmail.com"
}
]
}
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();
}
------
}
这对我来说很好。