mirror of
https://github.com/danog/endtoend-test-psl.git
synced 2024-11-26 12:25:03 +01:00
.github | ||
docs | ||
integration/Psalm | ||
src | ||
tests | ||
tools | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
CODE_OF_CONDUCT.md | ||
composer.json | ||
CONTRIBUTING.md | ||
LICENSE | ||
Makefile | ||
README.md | ||
SECURITY.md |
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\{Str, Vec};
/**
* @psalm-param iterable<?int> $codes
*/
function foo(iterable $codes): string
{
$codes = Vec\filter_nulls($codes);
$chars = Vec\map($codes, fn(int $code): string => Str\chr($code));
return Str\join($chars, ', ');
}
foo([95, 96, null, 98]);
// 'a, b, d'
Installation
Supported installation method is via composer:
composer require azjezz/psl
Psalm Integration
Please refer to the php-standard-library/psalm-plugin
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.