未找到类'evseevnnCassandraDatabase'



我试图为该命名空间调用类'evseevnn\Cassandra\Database',但没有成功。为此,我依赖于一个类似的案例,在我得到它的地方,它具有相同的架构

架构如下,

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

这是controller.php文件的代码片段,

use evseevnnCassandraDatabase 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 evseevnnCassandra;
use ......
use ......
class Database {
    ......
    ......
}

由于是相同的体系结构,并且部署在同一个WAMP服务器中,所以它不起作用。我该怎么修?

你有作曲家吗?

如果。。。对

require_once 'vendor/autoload.php';

你的PHP版本是什么?

命名空间仅启用PHP 5.3+

这是我用来安装驱动程序的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 evseevnnCassandraDatabase as Database;
class Controller
{
    ------
    ------
    private function openDatabaseConnection()
    {
        $nodes = [
            DB_HOST
        ];
        $this->db = new Database($nodes, DB_DEFAULT_KEYSPACE);
        $this->db->connect();
    }
    ------
}

这对我来说很好。

最新更新