1. Go to this page and download the library: Download phrity/net-stream library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
phrity / net-stream example snippets
class Stream implements StreamInterface
{
// Constructor
public function __construct(resource $stream); // Must be a resource of type stream
// PSR-7 methods
public function __toString(): string;
public function close(): void;
public function detach(): resource|null;
public function getSize(): int|null;
public function tell(): int;
public function eof(): bool;
public function isSeekable(): bool;
public function seek(int $offset, int $whence = SEEK_SET): void;
public function rewind(): void;
public function isWritable(): bool;
public function write(string $string): int;
public function isReadable(): bool;
public function read(int $length): string;
public function getContents(): string;
public function getMetadata(string|null $key = null): mixed;
// Additional methods
public function getResource(): resource;
}
class SocketStream extends Stream
{
// Methods
public function isConnected(): bool; // If stream is connected to remote
public function getRemoteName(): string|null; // Returns remote name
public function getLocalName(): string|null; // Returns local name
public function getResourceType(): string; // Get resource type
public function isBlocking(): bool|null; // If stream is blocking or not
public function setBlocking(bool $enable): bool; // Change blocking mode
public function setTimeout(int $seconds, int $microseconds = 0): bool; // Set timeout
public function readLine(int $length): string|null; // Read a line from stream, up to $length bytes
public function closeRead(): void; // Closes the stream for further reading
public function closeWrite(): void; // Closes the stream for further writing
}
class SocketClient {
// Constructor
public function __construct(UriInterface $uri);
// Methods
public function setPersistent(bool $persistent): self; // If client should use persisten connection
public function setTimeout(int|null $timeout): self; // Set timeout
public function setContext(array|null $options = null, array|null $params = null): self; // Set stream context
public function connect(): SocketStream; // Connect to remote
}
class SocketServer extends Stream {
// Constructor
public function __construct(UriInterface $uri);
// Methods
public function accept(int|null $timeout = null): SocketStream|null; // Accept connection on socket server
public function getTransports(): array; // Get available transports
public function setContext(array|null $options = null, array|null $params = null): self; // Set stream context
public function isBlocking(): bool|null; // If stream is blocking or not
public function setBlocking(bool $enable): bool; // Change blocking mode
}
class StreamCollection implements Countable, Iterator
{
// Constructor
public function __construct();
// Collectors and selectors
public function attach(Stream $attach, string|null $key = null): string; // Attach stream to collection
public function detach(Stream|string $detach): bool; // Detach stream from collection
public function getReadable(): self; // Get collection of readable streams
public function getWritable(): self; // Get collection of writable streams
public function waitRead(int $seconds = 60): self; // Wait for and get collection of streams with data to read
// Countable interface implementation
public function count(): int;
// Iterator interface implementation
public function current(): Stream;
public function key(): string;
public function next(): void;
public function rewind(): void;
public function valid(): bool;
}
class StreamFactory implements StreamFactoryInterface
{
// Constructor
public function __construct();
// PSR-17 methods
public function createStream(string $content = ''): Stream;
public function createStreamFromFile(string $filename, string $mode = 'r'): Stream;
public function createStreamFromResource(resource $resource): Stream; // Must be a resource of type stream
// Additional methods
public function createSocketStreamFromResource($resource): SocketStream; // Create a socket stream
public function createSocketClient(UriInterface $uri): SocketClient; / Create socket client
public function createSocketServer(UriInterface $uri): SocketServer; // Create a socket server
public function createStreamCollection(): StreamCollection; // Create a stream collection
}
class StreamException extends RuntimeException {
// Constructor
public function __construct(int $code, array $data = [], Throwable|null $previous = null)
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.