Я использую Ubuntu 12.04 + PHP + Nginx + MySQL 5.6
Мой путь к проекту / usr / share / nginx / www / project1
Я успешно установил Sphinx и смог полностью подключить API. Но мне нравится использовать SphinxQL Query Builder.
Я не знаком с композитором и пространством имен php. Я установил композитор на моей машине.
Я скопировал папку «SphinxQL-Query-Builder-master» в корневой каталог моего проекта.
Теперь я выполнил это
use Foolz\SphinxQL\SphinxQL;
use Foolz\SphinxQL\Connection;
// create a SphinxQL Connection object to use with SphinxQL
$conn = new Connection();
$conn->setParams(array('host' => 'domain.tld', 'port' => 9306));
$query = SphinxQL::create($conn)->select('column_one', 'colume_two')
->from('index_ancient', 'index_main', 'index_delta')
->match('comment', 'my opinion is superior to yours')
->where('banned', '=', 1);
$result = $query->execute();
Это возвращает мне фатальную ошибку: класс ‘Foolz \ SphinxQL \ Connection’ не найден
Может кто-нибудь помочь мне пошаговое руководство для этого?
Спасибо!!
Composer сам по себе не является обязательным требованием для вашего проекта, это менеджер пакетов php. Вы можете установить библиотеку Foolz \ SphinxQL с помощью этой команды:
php composer.phar require foolz/sphinxql-query-builder
Если composer.phar не существует в папке вашего проекта, вы можете скачать его с помощью:
php -r "readfile('https://getcomposer.org/installer');" | php
После успешной установки библиотека SphinxQL будет загружена в продавец папка. Также вам потребуется скрипт автозагрузки, сгенерированный композитором продавец / autoload.php и изменить хост / порт Конфигурация перед его использованием.
Наконец, ваш пример кода должен выглядеть так:
require "vendor/autoload.php";
use Foolz\SphinxQL\SphinxQL;
use Foolz\SphinxQL\Connection;
// create a SphinxQL Connection object to use with SphinxQL
$conn = new Connection();
// Here sphinx installation host and port listening for Mysql connection
$conn->setParams(array('host' => '127.0.0.1', 'port' => 9306));
$query = SphinxQL::create($conn)->select('column_one', 'colume_two')
->from('index_ancient', 'index_main', 'index_delta')
->match('comment', 'my opinion is superior to yours')
->where('banned', '=', 1);
$result = $query->execute();
Других решений пока нет …