Psl - PHP Standard Library
Psl is a standard library for PHP, inspired by hhvm/hsl.
The goal of Psl is to provide a consistent, centralized, well-typed set of APIs for PHP programmers.
Example
<?php
declare(strict_types=1);
use Psl\Async;
use Psl\TCP;
use Psl\IO;
use Psl\Shell;
use Psl\Str;
Async\main(static function(): int {
IO\write_line('Hello, World!');
[$version, $connection] = Async\concurrently([
static fn() => Shell\execute('php', ['-v']),
static fn() => TCP\connect('localhost', 1337),
]);
$messages = Str\split($version, "\n");
foreach($messages as $message) {
$connection->writeAll($message);
}
$connection->close();
return 0;
});
Installation
Supported installation method is via composer:
composer require azjezz/psl
Psalm Integration
Please refer to the php-standard-library/psalm-plugin
repository.
PHPStan Integration
Please refer to the php-standard-library/phpstan-extension
repository.
Documentation
You can read through the API documentation in docs/
directory.
Interested in contributing?
Have a look at CONTRIBUTING.md
.
Sponsors
Thanks to our sponsors and supporters:
JetBrains |
---|
License
The MIT License (MIT). Please see LICENSE
for more information.