Автозагрузчик Codeigniter не принимает библиотеку Кассандры

Привет, я новичок в базе данных Кассандры. Я скачал phpcassa из
https://github.com/mauritsl/php-cassandra.

Когда я попытался автоматически загрузить библиотеку cassandra из application / config / autoload.php, я получил ошибку cassandra класса несуществования.

Пожалуйста, помогите мне решить эту проблему.

0

Решение

o Поместите все связанные с Cassandra файлы в папку application / library /.

  • Удалите пространство имен из каждого файла класса Cassandra.

«Пространство имен Кассандра»;

  • Ваше имя файла и имя класса должны совпадать, чтобы загрузить библиотеку в функции автоматической загрузки в codeigniter.

Имя класса файла Cassandra — «Соединение».

  • Измените имя класса на «Кассандра»

  • Ваш конструктор ожидает параметр для подключения к базе данных. Вы не можете передавать параметры при загрузке библиотеки автозагрузки.

  • Измените имя вашего метода конструктора как connect

  • Используя $ this-> cassandra-> connect ($ host, $ keyspace, $ options) вы можете обработать соединение.

Переименуйте __construct в connect

/**
* Connect to Cassandra cluster.
*
* @param mixed $host
*   Hostname as string or array of hostnames.
* @param string $keyspace
* @param array $options
*/
public function connect($host, $keyspace = NULL, $options = array()) {
$this->options += $options;

if (empty($host)) {
throw new InvalidArgumentException('Invalid host');
}
if (!is_array($host)) {
$host = array($host);
}
shuffle($host);
while ($host) {
$hostname = array_pop($host);
try {
$this->transport = new Transport($hostname, $this->options['connect_timeout'], $this->options['stream_timeout']);
break;
}
catch (Exception $e) {
if (empty($host)) {
// No other hosts available, rethrow exception.
throw $e;
}
}
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]