jkque/laravel-string-replace
最新稳定版本:1.0.0
Composer 安装命令:
composer require jkque/laravel-string-replace
包简介
Helper for a messy str_replace
README 文档
README
This package will help you when str_replace gets a little bit messy.
Introduction
When you see something like this:
$remove_characters = ['<p>', '</p>', ''', ''', '<h2>', '</h2>', '<strong>', '</strong>', ' ', '?','@name', '&rsquot;', '"', '@firstname']; $replace_with = ['', '', "'", "'", '', '', '', '', '', '?', $user->name, "'", '"', $user->first_name]; $message = str_replace($remove_characters, $replace_with, $message);
A cleaner way:
use Jkque\StringReplace\StringReplace; $message = StringReplace::content($string) ->when($user, function ($string) use($user) { return $string->with(new UserStringReplace($user)); }) ->variables([ ''' => "'", '?' => '?' ]) ->replace();
use Jkque\StringReplace\StringReplace; use App\User; class UserStringReplace extends StringReplace { public function __construct(User $user) { $this->variables([ '@name' => $user->name, ]); } }
Usage
use Jkque\StringReplace\StringReplace; $string = 'We are awesome <p>in php</p> replacethis'; $string = StringReplace::content($string) ->variables([ 'replacethis' => 'coding', ]) ->replace(); // the ending method to be called
You can use conditional closures when and unless
$string->when($somecondtion, function ($string) { // do something; })
By default html tags is being strip but you can turn it off by passing a false value in stripTags(false) method.
Pipeline
To breakdown complex process into individual tasks you can create a class that extends Jkque\StringReplace\StringReplace
use Jkque\StringReplace\StringReplace; class RemoveBadWords extends StringReplace { public function __construct() { $this->variables([ 'badword' => '*', ]); } }
A helper command to create this class php artisan string-replace:pipe {name} {model? : With model}. You can change the namespace of your model in the config file the default is 'App\'.
Installation
You can install the package via composer:
composer require jkque/laravel-string-replace
publish config files
php artisan vendor:publish --provider="Jkque\StringReplace\StringReplaceServiceProvider"
Testing
composer test
Changelog
Please see CHANGELOG for more information what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email johnkevin.cadungog@gmail.com instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.
统计信息
- 总下载量: 4.38k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 9
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-07-05