Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/azjezz/psl
π PHP Standard Library - a modern, consistent, centralized, well-typed, non-blocking set of APIs for PHP programmers
https://github.com/azjezz/psl
async collection data-structures encoding grapheme-cluster html io json math multibyte-strings non-blocking password-hashing php pseudo-random secure-random shell standard-library type-assertion
Last synced: 26 days ago
JSON representation
π PHP Standard Library - a modern, consistent, centralized, well-typed, non-blocking set of APIs for PHP programmers
- Host: GitHub
- URL: https://github.com/azjezz/psl
- Owner: azjezz
- License: mit
- Created: 2019-12-24T01:19:10.000Z (almost 5 years ago)
- Default Branch: next
- Last Pushed: 2024-04-12T09:50:08.000Z (7 months ago)
- Last Synced: 2024-04-13T21:14:36.002Z (7 months ago)
- Topics: async, collection, data-structures, encoding, grapheme-cluster, html, io, json, math, multibyte-strings, non-blocking, password-hashing, php, pseudo-random, secure-random, shell, standard-library, type-assertion
- Language: PHP
- Homepage:
- Size: 3.53 MB
- Stars: 1,147
- Watchers: 22
- Forks: 64
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
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:
>
> - [Decolonize Palestine](https://decolonizepalestine.com/) - An informative resource to better understand the situation in Palestine. Please take the time to read it.
> - [One Ummah - Gaza Emergency Appeal](https://donate.oneummah.org.uk/gazaemergencyappeal48427259) - A platform to provide direct donations to help the people in Gaza.
> - [Islamic Relief UK - Palestine Appeal](https://www.islamic-relief.org.uk/giving/appeals/palestine/) - Another trusted platform to provide support for those affected in Palestine.
>
> Thank you for taking a moment to bring awareness and make a difference. π΅πΈβ€οΈ# Psl - PHP Standard Library
![Unit tests status](https://github.com/azjezz/psl/workflows/unit%20tests/badge.svg)
![Static analysis status](https://github.com/azjezz/psl/workflows/static%20analysis/badge.svg)
![Security analysis status](https://github.com/azjezz/psl/workflows/security%20analysis/badge.svg)
![Coding standards status](https://github.com/azjezz/psl/workflows/coding%20standards/badge.svg)
![Coding standards status](https://github.com/azjezz/psl/workflows/documentation%20check/badge.svg)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/4228/badge)](https://bestpractices.coreinfrastructure.org/projects/4228)
[![Coverage Status](https://coveralls.io/repos/github/azjezz/psl/badge.svg)](https://coveralls.io/github/azjezz/psl)
[![MSI](https://img.shields.io/endpoint?style=flat&url=https%3A%2F%2Fbadge-api.stryker-mutator.io%2Fgithub.com%2Fazjezz%2Fpsl%2F2.0.x)](https://dashboard.stryker-mutator.io/reports/github.com/azjezz/psl/2.0.x)
[![Type Coverage](https://shepherd.dev/github/azjezz/psl/coverage.svg)](https://shepherd.dev/github/azjezz/psl)
[![Total Downloads](https://poser.pugx.org/azjezz/psl/d/total.svg)](https://packagist.org/packages/azjezz/psl)
[![Latest Stable Version](https://poser.pugx.org/azjezz/psl/v/stable.svg)](https://packagist.org/packages/azjezz/psl)
[![License](https://poser.pugx.org/azjezz/psl/license.svg)](https://packagist.org/packages/azjezz/psl)Psl is a standard library for PHP, inspired by [hhvm/hsl](https://github.com/hhvm/hsl).
The goal of Psl is to provide a consistent, centralized, well-typed set of APIs for PHP programmers.
## Example
```php
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](https://getcomposer.org):
```shell
composer require azjezz/psl
```### Psalm Integration
Please refer to the [`php-standard-library/psalm-plugin`](https://github.com/php-standard-library/psalm-plugin) repository.
### PHPStan Integration
Please refer to the [`php-standard-library/phpstan-extension`](https://github.com/php-standard-library/phpstan-extension) repository.
## Documentation
You can read through the API documentation in [`docs/`](./docs) directory.
## Interested in contributing?
Have a look at [`CONTRIBUTING.md`](./CONTRIBUTING.md).
## Sponsors
Thanks to our sponsors and supporters:
## License
The MIT License (MIT). Please see [`LICENSE`](./LICENSE) for more information.