A set of useful PHP classes.
MD\Foundation
is a set of useful PHP classes and functions that ease your development and abstract away some very common code.
It is what Lo-Dash is for JavaScript.
Visit http://www.michaldudek.pl/Foundation/ for full documentation.
You can install MD\Foundation
using Composer.
$ composer require michaldudek/foundation dev-master
MD\Foundation
features are grouped into PHP namespaces.
Namespace MD\Foundation\Utils
contains several static classes that contain common functions that can e.g. change your array filtering code into a one-liner. Classes are split into StringUtils
, ArrayUtils
, ObjectUtils
and FilesystemUtils
.
Password hashing and cryptography is a solved problem, yet a lot of projects still reinvent the wheel with funky hashing algorithms. MD\Foundation\Crypto
namespaces provides a standard and best-practice methods to deal with basic cryptography, especially if you are not running PHP 5.5 yet.
Inside the MD\Foundation\Debug
namespace you will find few classes that help debug and profile your code, especially fit for runtime. The Debugger
can be especially useful for analyzing variables at runtime and the Timer
will help you find bottlenecks in your code.
We all love to throw exceptions and while PHP provides a lot of exceptions to throw, MD\Foundation\Exceptions
adds a few more (like NotImplementedException
with automatic method name resolution) or extends existing ones for easier use (InvalidArgumentException
).
There is also a couple of uncategorized classes which occassionally might be of use and which range from creating MagicObject
s with automatic magic getters and setters (e.g. for very quick data storage) to ease working with other vendors like very common Psr\Log
.
Issues and pull requests are very welcome! When creating a pull request please include full test coverage to your changes.