rodrigojavornik/php-cleanup

v1.4.18 2023-08-29 18:47 UTC

This package is auto-updated.

Last update: 2024-09-29 21:39:22 UTC


README

PHP 和 Laravel 的强大清理库。无依赖

安装

composer require rodrigojavornik/php-cleanup

使用

use PHPCleanup\Sanitize;

Sanitize::input()->sanitize(' <h1>Hello World</h1> ');//Hello World
Sanitize::trim()->captalize()->sanitize(' string    ');//String
Sanitize::trim()->lowercase()->sanitize(' MY name IS    ');//my name is
Sanitize::onlyNumbers()->sanitize(' abc1234');//1234

可用过滤器

  • captalize: 将字符串转换为大写;
  • captalizeAll: 将所有字符串转换为大写;
  • dateTime: 将字符串转换为 DateTime 对象;
  • email: 移除电子邮件地址中不允许的所有字符;
  • escape: 对值应用 htmlspecialchars;
  • formatNumber: 以分组千位的方式格式化数字;
  • input: 从字符串的开始和结束处删除一个空格,并移除任何 HTML 和 PHP 标签;
  • keys: 对数组元素应用清理;
  • lowercase: 将字符串转换为小写;
  • money: 将数字格式化为货币值;
  • onlyAlpha: 移除任何非字母字符;
  • onlyLatinAlpha: 移除所有非拉丁字符;
  • onlyNumbers: 移除所有非数字字符;
  • removeAccentedCharacters: 用非带重音字符替换带重音字符;
  • stripTags: 对值应用 strip_tags;
  • trim: 从字符串的开始和结束处删除空格;
  • upperCase: 将字符串转换为大写;

captalize

将字符串转换为大写 返回: 清理对象

Sanitize::capitalize()->sanitaze('is wednesday my dudes');
//output: Is wednesday my dudes

captalizeAll

将所有字符串转换为大写 返回: 清理对象

Sanitize::captalizeAll()->sanitize('is wednesday my dudes');
//output: Is Wednesday My Dudes

dateTime

将字符串转换为 DateTime 对象 参数: $dateFormat = 'Y-m-d H:i:s' 返回: DateTime 对象或 false

Sanitize::dateTime()->sanitize('2023-08-10 10:15:00')->getTimestamp();
Sanitize::dateTime()->sanitize('2023-08-10 10:15:00asfasdfdsf')->getTimestamp();
Sanitize::dateTime()->sanitize('2023-08-10 10:15:00 ')->getTimestamp();
Sanitize::dateTime('d/m/Y H:i:s')->sanitize(' 10/08/2023 10:15:00')->getTimestamp();
//output: DateTime object 

email

移除电子邮件地址中不允许的所有字符 返回: 清理对象

Sanitize::email()->sanitize('email#1@domain.com ');
//output: email#1@domain.com

Sanitize::email()->sanitize('username@email.org');
//output: username@email.org

Sanitize::email()->sanitize('email1@domain().com');
//output: email1@domain.com

escape

对值应用 htmlspecialchars 返回: 清理对象

Sanitize::escape()->sanitize('<script>is wednesday my dudes &</script>')
//output: &lt;script&gt;is wednesday my dudes &amp;&lt;/script&gt;

formatNumber

以千位分组格式化数字 参数: $decimalPlace = 2 , $decimalSeparator = '.' , $thousandsSeparator = '' 返回: 清理对象

注意:应用了 onlyNumber 过滤器。

Sanitize::formatNumber(2, '.')->sanitize('123321123sdfasdf');
//output:123321123.00
Sanitize::formatNumber(2, ',')->sanitize('123321123sdfasdf');
//output:123321123,00
Sanitize::formatNumber(2, ',', '.')->sanitize('123321123sdfasdf');
//output:123.321.123,00
Sanitize::formatNumber(2, '.', ',')->sanitize('123321123sdfasdf');
//output:123,321,123.00
Sanitize::formatNumber(3, '.', ',')->sanitize('1987.7')
//output:1,987.700

input

从字符串的开始和结束处删除一个空格,并移除任何 HTML 和 PHP 标签 返回: 清理对象

Sanitize::input()->sanitize(' <script>hello world &</script> ');
//output: hello world &

keys

对数组元素应用清理 参数: array 返回: 清理对象

$list = [
	'name' => ' carlos alberto ',
	'age' => '23r',
	'email' => ' ¨teste@teste.com '
];

$result = Sanitize::keys([
	'name' => Sanitize::input()->uppercase(),
	'age' => Sanitize::input()->onlyNumbers(),
	'email' => Sanitize::input()->email()
])->sanitize($list);
/* output:
array(3) {
  ["name"]=>
  string(14) "CARLOS ALBERTO"
  ["age"]=>
  string(2) "23"
  ["email"]=>
  string(15) "teste@teste.com"
}*/ 

lowercase

从字符串的开始和结束处删除一个空格,并移除任何 HTML 和 PHP 标签 返回: 清理对象

Sanitize::lowercase()->sanitize('THE LIBRARY OF ALEXANDRIA');
//output: the library of alexandria

Money

将数字格式化为货币值 参数: $locale = 'en-US' 返回: 清理对象

注意:应用了onlyNumber过滤器。您可以在此处查看当前地区完整列表:这里

Sanitize::money()->sanitize('123456');
//output: $123,654.00

Sanitize::money('pt_br')->sanitize('1236.54');
//output: R$ 1.236,54

onlyAlpha

移除所有非字母字符;参数: $additionalChars 返回: 清理对象

Sanitize::onlyAlpha()->sanitize('Home ç 1@#$%¨(873469');
//output: Home

Sanitize::onlyAlpha('ç', '1', ' ')->sanitize('Home ç 123456');
//output: Home ç 1

onlyLatinAlpha

移除所有非字母字符;参数: $additionalChars 返回: 清理对象

Sanitize::onlyLatinAlpha()->sanitize('Home ç 1@#$%¨(873469');
//output: Home ç ¨

Sanitize::onlyLatinAlpha()->sanitize('Home ç 123456');
//output: Home ç 

onlyNumbers

移除所有非数字字符 返回: 清理对象

Sanitize::onlyNumbers()->sanitize('Home ç 1@#$%¨(873469');
//output: 1873469

Sanitize::onlyNumbers()->sanitize('Home ç 123456');
//output: 123456 

removeAccentedCharacters

将带重音的字符替换为不带重音的字符 返回: 清理对象

Sanitize::removeAccentedCharacters()->sanitize("Qu'á çà, qu'á là, mon ami?");
//output: Qu'a ca, qu'a la, mon ami?

Sanitize::removeAccentedCharacters()->sanitize("Águas passadas não movem moinhos.")
//output: Aguas passadas nao movem moinhos.

stripTags

应用strip_tags到值上 参数: $allowableTags 返回: 清理对象

Sanitize::stripTags()->sanitize('<html><h1>welcome</h1></html>');
//output: welcome

Sanitize::stripTags('<h1>')->sanitize('<html><h1>welcome</h1></html>')
//output: <h1>welcome</h1>

trim

移除字符串开头和结尾的空白字符 返回: 清理对象

Sanitize::uppercase()->sanitize(' blablabla ');
//output: blablabla

trim

将字符串转换为大写 返回: 清理对象

Sanitize::uppercase()->sanitize('home');
//output: HOME