azjezz/psl

PHP Standard Library

Maintainers

Details

github.com/azjezz/psl

Source

Issues

Fund package maintenance!
azjezz

Installs: 3 221 832

Dependents: 60

Suggesters: 2

Security: 0

Stars: 1 152

Watchers: 21

Forks: 65

Open Issues: 25


README

Important

🇵🇸 Support Palestine 🇵🇸

In light of recent events in Gaza, I encourage everyone to educate themselves on the ongoing issues in Palestine and consider supporting the people there. Here are some resources and donation links:

Thank you for taking a moment to bring awareness and make a difference. 🇵🇸❤️

Psl - PHP Standard Library

Unit tests status Static analysis status Security analysis status Coding standards status Coding standards status CII Best Practices Coverage Status MSI Type Coverage Total Downloads Latest Stable Version License

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
68747470733a2f2f7265732e636c6f7564696e6172792e636f6d2f617a6a657a7a2f696d6167652f75706c6f61642f76313539393233393931302f6a6574627261696e735f716e7962306f2e706e67

License

The MIT License (MIT). Please see LICENSE for more information.