net-php/README.md
2024-04-05 09:52:50 +03:00

94 lines
1.3 KiB
Markdown

# net-php
Network Library for PHP with native Yggdrasil support
## Install
`composer require yggverse/net`
## Usage
### Socket
#### Check socket is open
```
var_dump(
\Yggverse\Net\Socket::isOpen('yo.index', 80)
);
```
#### Check host valid
```
var_dump(
\Yggverse\Net\Socket::isHost('yo.index')
);
```
#### Check port valid
```
var_dump(
\Yggverse\Net\Socket::isPort(80)
);
```
### Dig
#### Resolve records
```
var_dump(
\Yggverse\Net\Dig::records('yo.index', ['A', 'AAAA'])
);
```
#### Check hostname valid
```
var_dump(
\Yggverse\Net\Dig::isHostName('yo.index')
);
```
#### Check record valid
```
var_dump(
\Yggverse\Net\Dig::isRecord('A')
);
```
#### Check record value valid
```
var_dump(
\Yggverse\Net\Dig::isRecordValue('A', '127.0.0.1')
);
```
### Address
Includes useful methods to work with network addresses
```
$address = new \Yggverse\Net\Address(
'http://yo.ygg'
);
var_dump(
$address->getScheme() // Just scheme substring
);
var_dump(
$address->absolute(
'./some/uri'
) // return http://yo.ygg/some/uri
);
```
## Integrations
* [Network API with native Yggdrasil/IPv6 support](https://github.com/YGGverse/web-api)
* [Yo! Search Crawler for different networks](https://github.com/YGGverse/Yo)