Error on socket even though socket is enabled in PHP.ini for OrientDB

51 Views Asked by At

i need help with the problem I found. I use OrientDB and connect it with PHP, then i get the error as below:

Fatal error: Uncaught PhpOrient\Exceptions\SocketException: Error 0 : The operation completed successfully in C:\xampp\htdocs\tugas\PhpOrient\src\PhpOrient\Protocols\Binary\OrientSocket.php:91
Stack trace:
#0 C:\xampp\htdocs\tugas\PhpOrient\src\PhpOrient\Protocols\Binary\SocketTransport.php(146): PhpOrient\Protocols\Binary\OrientSocket->connect()
#1 C:\xampp\htdocs\tugas\PhpOrient\src\PhpOrient\Protocols\Binary\Abstracts\Operation.php(76): PhpOrient\Protocols\Binary\SocketTransport->getSocket()
#2 C:\xampp\htdocs\tugas\PhpOrient\src\PhpOrient\Protocols\Binary\SocketTransport.php(223): PhpOrient\Protocols\Binary\Abstracts\Operation->__construct(Object(PhpOrient\Protocols\Binary\SocketTransport))
#3 C:\xampp\htdocs\tugas\PhpOrient\src\PhpOrient\Protocols\Binary\SocketTransport.php(161): PhpOrient\Protocols\Binary\SocketTransport->operationFactory('PhpOrient\Proto...', Array)
#4 C:\xampp\htdocs\tugas\PhpOrient\src\PhpOrient\PhpOrient.php(247): PhpOrient\Protocols\Binary\SocketTransport->execute('connect', Array)
#5 C:\xampp\htdocs\tugas\coba.php(8): PhpOrient\PhpOrient->connect()
#6 {main} thrown in C:\xampp\htdocs\tugas\PhpOrient\src\PhpOrient\Protocols\Binary\OrientSocket.php on line 91

Here is the php file:

<?php
require "PhpOrient/vendor/autoload.php";
use PhpOrient\PhpOrient;

$client = new PhpOrient( 'localhost', 2424 );
$client->username = 'root';
$client->password = '0r13ntDB';
$client->connect();
?>

and i already turn on sockets extension on php.ini :

; The MIBS data available in the PHP distribution must be installed.
; See https://www.php.net/manual/en/snmp.installation.php
;extension=snmp

;extension=soap
extension=sockets
;extension=sodium
;extension=sqlite3
;extension=tidy
extension=xsl

maybe I missed something?

1

There are 1 best solutions below

0
neneo On

it turns out that OrientDB does not support PHP version 8, when I change it to PHP version 7.x everything runs normally.

If you are using OrientDB don't forget to adjust the following bugs when installing:

  1. require-dev.Ostico/phpdoc-md is invalid, it should not contain uppercase characters. Please use ostico/phpdoc-md instead.
  2. Root composer.json requires phpdocumentor/phpdocumentor dev-master -> satisfiable by phpdocumentor/phpdocumentor[dev-master]

Fixing :

Open composer.json in your PhpOrient folder then :

  1. Make changes to "Ostico/phpdoc-md" to "ostico/phpdoc-md" in "require-dev"
  2. The removal of "phpdocumentor/phpdocumentor" in "require-dev" was replaced by a manual installation of https://github.com/phpDocumentor/phpDocumentor/releases