psl
Safe
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
psl
-
PHP libraries and tools
azjezz/psl: PHP Standard Library - a modern, consistent, centralized, well-typed, non-blocking set of APIs for PHP programmers
-
Avoiding empty() in PHP
One of the companies made heavy use of azjezz/psl and used extended rules for it. Anyone who's not used to strict type mode and type-hinting all the code they write would have a hard time getting a job at those companies.
-
PHP 8.2 Released
For the order of function arguments: sounds like you'd enjoy https://github.com/azjezz/psl.
Yes it's a userland workaround and not a fix for the language, but it's thinking about these issues and a PHP extension (offering better performance) is being talked about.
- Whats New in PHP 8.2
-
Long-Term Planning for PHP 9.0 Error Promotion
I wrote a library for this, and more: https://github.com/azjezz/psl
- PHP RFC: Consistent Function Names
- Psl – PHP Standard Library
-
PHP Standard Library - a modern, consistent, centralized, well-typed set of APIs for PHP programmers.
Why use regular expressions for something so simple as `trim()`? https://github.com/azjezz/psl/blob/1.5.x/src/Psl/Str/trim.php#L23
- Interop in PHP Should Not Be Exceptional
Safe
-
PHP libraries and tools
thecodingmachine/safe: All PHP functions, rewritten to throw exceptions instead of returning false
-
Oh boy here we go again…
There are workarounds with some third party libraries, but yeah, it's a pain.
- Which inconsistences of PHP annoy you the most?
-
Any ideas about why json_encode would return empty for a request on local dev, but not empty on server?
- try not to use the built-in json_encode, as it doesnt have proper error handling. Use instead this: https://github.com/thecodingmachine/safe and Safe\json_encode()
-
Native defer & errdefer
Not what you asked for, in modern codebases it's advised to use things like https://github.com/thecodingmachine/safe
-
Use namespaced functions to replace native functions - github.com/rezen/proxyz
The goal of https://github.com/thecodingmachine/safe is different than proxyz. My goal is a method proxy that allows you to override or watch the behaviour of a function from the "global namespace" effortlessly.
-
preg_last_error() and json_last_error()
Safe-PHP redeclares all core PHP functions (in a new namespace) to throw exceptions properly. I use this on almost every project now.
What are some alternatives?
php-json-comment - Lightweight JSON comment and trailing comma stripper library for PHP with support for literal newlines and nested JSON strings.
PHP Dotenv - Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.
translation - Provides tools to internationalize your application
Symfony VarDumper - Provides mechanisms for walking through any arbitrary PHP variable
Opis String - Multibyte strings as objects
Expose - A beautiful, fully open-source, tunneling service - written in pure PHP
php7-mysql-shim - A shim for ext/mysql in PHP 7+
phpstan-safe-rule - A PHPStan rule to be used with the thecodingmachine/safe package
map - PHP arrays and collections made easy
Symfony Dotenv - Registers environment variables from a .env file
Colllect - Your visual bookmark manager
Yo! Symfony TOML - A PHP parser for TOML