⚡️ A flexible, simple & yet powerful string manipulation helper for PHP. It gives you the magic of method chaining and it's easier and shorter to be included in views. It Supports most of PHP built-in strings functions (and other useful methods like: contains, equal, append, prepend ...).
str('Hi World')->replace(' ', '+')->lower();This is a wrapper for PHP default string functions, to provide a very poweful method chaining and conditions. You don't have to learn new methods names, just use PHP functions names that you know.
You can install the package via composer locally in your project folder:
$ composer require awssat/str-helperAfter installing it, just start using StrHelper class, or simply the helper function str():
str('Hi Hello')->strReplace(' ', '-');
>> hi-hellostr('Hi Hello')->prepend('[')->append(']');
>> [Hi Hello]In case you want an explicit string value for conditions, use "get":
if(str('Hi')->lower->get() == 'hi') {
echo 'yes';
}
>> yesThere is a "tap" method:
str('LINK.COM')->tap(function($v){ print($v); })->lower();
>> LINK.COMfor callbacks use "do" method:
str('<a>link.com</a>')->do(function($string){
return strip_tags($string);
});
>> link.comor:
str('<a>link.com</a>')->do(function(){
$this->stripTags();
});
>> link.comyou may notice using camelCase instead of snake_case for method name works too.
You can also use conditions, if(..), else(), endif()
str('<html>hi</html>')
->ifContains('hi')
->upper();
>> <HTML>HI</HTML> if can take an anonymous function
str('<html>hi</html>')
->if(function(){
return $this->contains('hi');
})
->upper();
>> <HTML>HI</HTML> All methods are availabe to be called statically, as:
StrHelper::capitalize('life');or using str() function.
str()::capitalize('nomad');[UTF-8 Support] If mbstring library is installed and you call a strpos function, mb_strpos will be called instead.
Simply use:
$ composer testThe MIT License (MIT). Please see License File for more information.