NeoClientPHP Проблема при получении данных из Neo4J

В настоящее время я все еще изучаю графическую базу данных Neo4J и планирую перенести мою текущую СУБД в графическую базу данных. Поэтому я искал методологию подключения Neo4J в PHP / Codeigniter, пока не обнаружил, что Neoxygen-NeoClient был ответом.

После того, как я установил это, используя composer, тогда я планирую проверить это. Я создал новую страницу под названием connection.php и помещен в корневую папку. К сожалению, сейчас у меня возникли проблемы, когда получить данные из Neo4J на моем локальном хосте и

И ниже это содержит connection.php

<?php
require_once 'vendor/autoload.php';
use Neoxygen\NeoClient\ClientBuilder;
$client = ClientBuilder::create()
->addConnection('default', 'http', 'myserver.dev', 7474, true, 'username', 'password')
->build();
$q = 'MATCH (n:Actor) RETURN n.name';
$client->sendCypherQuery($q);
$result = $client->getRows();
echo $result;
?>

Таким образом, результат этого запроса не отображается, и я хотел бы спросить, как отобразить запрос возврата из Neo4J в PHP?

обновленный

Я пытался протестировать ваш пример запуска приложения здесь
https://github.com/ikwattro/neo4j-neoclient-example

Затем я выполнил ваши шаги по установке и запустил его на localhost
Но все равно не удалось отобразить данные из Neo4J, после того как я проверил веб-консоль, я получил эту ошибку

HTTP: // локальный / поиск д = Matrix Не удалось загрузить ресурс: сервер ответил с состоянием 404 (не найдено)
localhost / graph Не удалось загрузить ресурс: сервер ответил с состоянием 404 (не найдено)
localhost / search? q = Matrix Не удалось загрузить ресурс: сервер ответил со статусом 404 (не найдено)

Я думаю, проблема в том, что я не понимаю график а также поиск папка после того, как я сделал установку композитора, и я получил только продавец папка

composer install --no-dev --optimize-autoloader

Не могли бы вы подтвердить это?
Если это не так, пожалуйста, дайте мне какое-то решение, чтобы решить эту проблему.

А также не могли бы вы объяснить, что вы имеете в виду, чтобы запустить приложение с помощью

http://localhost:8000/import

Спасибо, прежде чем

0

Решение

Я поддерживаю NeoClient.

Во-первых, если вам нужно обработать результаты, вы должны активировать средство форматирования ответа:

$client = ClientBuilder::create()
->addConnection('default', 'http', 'myserver.dev', 7474, true, 'username', 'password')
->setAutoFormatResponse(true)
->build();

Теперь у вас есть несколько возможностей вернуть ваши результаты:

В табличном формате, как в браузере Neo4j:

$q = 'MATCH (n:Actor) RETURN n.name';
$result = $client->sendCypherQuery($q)->getResult()->getTableFormat();

Или, если вы хотите манипулировать узлами и объектами отношений:

$q = 'MATCH (n:Actor) RETURN n';
$result = $client->sendCypherQuery($q)->getResult();
$nodes = $result->getNodes();
$relationships = $result->getRelationships();

Вы также можете использовать идентификатор с методом get:

$q = 'MATCH (n:Actor) RETURN n';
$result = $client->sendCypherQuery($q)->getResult();
$actors = $result->get('n');

Я написал 3 статьи на Sitepoint о Neo4j и PHP с NeoClient, я уверен, что они могут вам помочь:

http://www.sitepoint.com/author/ikwattro/

ОБНОВИТЬ

Я проверил Neo4j-MovieDB-Repository Я сделал некоторое время назад, и я обновил README, как проверить его локально.

Для ваших обновленных вопросов:

  1. Убедитесь, что вы запустили веб-сервер с правильным корневым путем, поэтому, если ваш текущий каталог — $ myrepo / web, то php -S localhost:8000 все будет в порядке, если вы находитесь в родительском каталоге, вам нужно предоставить корень веб-индекса в качестве аргумента php -S localhost:8000 -t web/

  2. URL http://localhost:8000/importdb сделан для того, чтобы загрузить данные в базу данных, иначе он не найдет фильмы и актеров.

Если у вас все еще есть ошибки или проблемы, пожалуйста, откройте отдельный вопрос SO или вызовите проблему на Github https://github.com/ikwattro/neo4j-moviedb-example/issues

1

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

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

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