Add methods to determine whether a variable is blank or present.
Inspired by Ruby on Rails.
This package is a hackathon product. Idea was to port the
Ruby on Rails methods
blank
and present
to PHP.
PHP has the empty method,
but more often I need to check whether a variable is not empty.
That's why a notEmpty
method is available as well.
See the list below to compare the different behaviour of these methods.
┌─────────────────────────┬─────────┬────────────┬─────────┬───────────┐
│ VALUE │ EMPTY() │ NOTEMPTY() │ BLANK() │ PRESENT() │
├─────────────────────────┼─────────┼────────────┼─────────┼───────────┤
│ string '' │ true │ │ true │ │
│ string 'acme' │ │ true │ │ true │
│ string ' ' │ │ true │ true │ │
│ string ' ' │ │ true │ true │ │
│ string "\t\n" │ │ true │ true │ │
│ int 0 │ true │ │ true │ │
│ float 0.0 │ true │ │ true │ │
│ int 42 │ │ true │ │ true │
│ float 3.14 │ │ true │ │ true │
│ string '0' │ true │ │ true │ │
│ string '1337' │ │ true │ │ true │
│ null │ true │ │ true │ │
│ bool true │ │ true │ │ true │
│ bool false │ true │ │ true │ │
│ array [] │ true │ │ true │ │
│ array ['acme'] │ │ true │ │ true │
│ object {} │ │ true │ true │ │
│ object {"foo" => "bar"} │ │ true │ │ true │
└─────────────────────────┴─────────┴────────────┴─────────┴───────────┘
- PHP
Packagist Entry https://packagist.org/packages/pixelbrackets/not-empty/
https://gitlab.com/pixelbrackets/not-empty/
Mirror https://github.com/pixelbrackets/not-empty/
See tests/demo.php.
use Pixelbrackets\NotEmpty\Blank;
use Pixelbrackets\NotEmpty\NotEmpty;
use Pixelbrackets\NotEmpty\Present;
# Is a string empty? → Use PHPs »empty«
if (empty('')) { … }
# Is a string not empty? → Use »empty() === false«
if (empty('acme') === false) { … }
# → …or use »notEmpty« instead
if (NotEmpty::notEmpty('acme')) { … }
# A strings with whitespaces is blank → use a combination of conditions
if (is_string(' ') && empty(trim(' '))) { … }
# → …or use »blank« instead
if (Blank::blank(' ')) { … }
# → use »present« to check the opposite of »blank«
if (Present::present('acme')) { … }
💡 If you want to use the methods as global functions (blank()
instead of
the namespaced Pixelbrackets\NotEmpty\Blank::blank()
) then install the
»global« branch, using composer require pixelbrackets/not-empty:dev-global
.
GNU General Public License version 2 or later
The GNU General Public License can be found at http://www.gnu.org/copyleft/gpl.html.
Dan Untenzu (mail@pixelbrackets.de / @pixelbrackets)
See ./CHANGELOG.md
This script is Open Source, so please use, patch, extend or fork it.
This package is not in active delopment, contributions are welcome though.