A collection of Simple, opinionated yet hopefully useful PHP Helper Libs
OpinHelpers is a bellow "Swiss Army Knife" level set of opinionated Helper libs (hence the opin[h]el^^) covering some of the most annoying aspects of php programing, such as UTF8 string manipulation, arbitrary precision Mathematics or properly locking a file.
OpinHelpers libs are opinionated in several ways and do not aim at being universal, but they should hopefully be pretty useful in many IRL cases.
OpinHelpers can be installed using composer:
composer require "fab2s/opinhelpers"
If you want to specifically install the php >=7.1.0 version, use:
composer require "fab2s/opinhelpers" ^1
If you want to specifically install the php 5.6/7.0 version, use:
composer require "fab2s/opinhelpers" ^0
There are mostly (see Compatibility) no changes other than further typing from 0.x to 1.x
OpinHelpers is just requiring individual libraries that each has its own repository and documentation
- Math: High precision base10 fluent helper with a rather strict approach
- Utf8: Purely static UTF8 Helper
- Strings: Purely static String Helper to handle more advanced utf8 string manipulations
- Bom: Purely static zero dependencies BOM Helper to handle unicode BOMs
- FileLock: fluent file locking helper
OpinHelpers comes with a
deprecated.php file you can
require in your project should you need to keep using the old
namespace from before v1
require 'vendor/fab2s/opinHelpers/src/deprecated.php'; // no you can use fab2s\OpinHelpers\Math; // same as use fab2s\Math\Math; // old version will be marked as deprecated $number = fab2s\OpinHelpers\Math::numder('42'); // new one is ok with full type hints $number = fab2s\Math\Math::numder('42');
No notable changes where made to the methods names or signature, but there was some small return types changes (false vs null in
Utf8), one edge value (
Utf8::chr(0) = "\0") and one bug with
UTF-32-LEBOM detection. It should be ok in most of the cases but it is still preferable to refactor to new
namespaceand review the usage
OpinHelpers is tested against php 7.1, 7.2, 7.3 and 7.4
Contributions are welcome, do not hesitate to open issues and submit pull requests.
OpinHelpers components are open-sourced software licensed under the MIT license