PHP 8 Library for Nex Protocol
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

97 lines
1.7 KiB

1 month ago
# nex-php
1 month ago
1 month ago
PHP 8 Library for NEX Protocol (see also [nps-php](https://github.com/YGGverse/nps-php))
1 month ago
## Usage
```
composer require yggverse/nex
```
## Client
1 month ago
PHP interface for NEX protocol queries
1 month ago
``` php
$client = new \Yggverse\Nex\Client;
1 month ago
```
#### Client::request
1 month ago
1 month ago
Request data from URL | URI if constructed by URL
1 month ago
``` php
var_dump(
$client->request(
'nex://nightfall.city/nex/'
)
1 month ago
);
```
#### Client::setHost
#### Client::getHost
#### Client::setPort
#### Client::getPort
#### Client::setPath
#### Client::getPath
#### Client::setQuery
#### Client::getQuery
#### Client::getOptions
#### Client::setOptions
## Server
1 month ago
Build interactive server instance to listen NEX protocol connections!
``` php
$server = new \Yggverse\Nex\Server;
```
Provide optional `host`, `port` and `size` arguments in constructor or use available setters after object initiation.
``` php
1 month ago
$server = new \Yggverse\Nex\Server('127.0.0.1', 1900);
```
#### Server::setHost
#### Server::getHost
#### Server::setPort
#### Server::getPort
#### Server::setSize
#### Server::getSize
#### Server::setLive
#### Server::getLive
#### Server::start
Run server object using this method.
Define handler function as the argument to process application logic dependent of client request.
``` php
$server->start(
function (
string $request,
string $connect
): ?string
{
printf(
'connection: %s request: %s',
$connect,
$request
);
return null; // null|string response
}
);
```
#### Server::stop
Stop server instance.
Same to `Server::setLive(false)`
1 month ago
1 month ago
## Integrations
1 month ago
1 month ago
* [next](https://github.com/YGGverse/next) - PHP 8 Server for NEX Protocol