siriusphp / filtration

数据过滤库

2.0.0 2020-02-23 16:43 UTC

This package is auto-updated.

Last update: 2024-08-24 16:13:52 UTC


README

#Sirius\Filtration

Source Code Latest Version Software License Build Status Coverage Status Quality Score

PHP数组过滤/清理库

有时您需要确保由来源(例如:用户提交表单时)推送的值遵循某些限制,例如

  • 页标题前后不得有空格
  • 用户发送的评论中不得有HTML代码
  • 表示URL的字段中不得有空格
  • 移除XSS攻击
  • 等等...

有时您还需要确保在向用户发送数据之前对其进行解析。例如,您可能希望

  • 将Markdown转换为HTML
  • 将URL转换为链接
  • 将日期应用本地化格式
  • 等等 ()

为了实现这个最终结果,您需要过滤值。这正是SiriusFiltration发挥作用的地方

简要介绍

use Sirius\Filtration\Filtrator;

$filtrator = new Filtrator();

// add filters for title
$filtrator->add('title', 'trim');
$filtrator->add('title', 'strip_tags');
$filtrator->add('title', 'nullify');

// add filters for content in one go
$filtrator->add('content', [
	'trim'
]);

$result = $filtrator->filter(array(
	'title' => '   <h1>My title has tags and is awesome</h1>',
	'content' => '   My content was trimmed'
));

/* $result is
array(
	'title' => NULL ,
	'content' => 'My content was trimmed'
)
*/

链接