oaksoftwaredev/yii2-sanitizer

Yii2 Sanitizer 是一个简单的方式来清理或过滤你的输入。

安装: 750

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 1

类型:yii2-extension

1.0.3 2023-01-18 10:01 UTC

This package is auto-updated.

Last update: 2024-09-18 13:35:10 UTC


README

Yii2 Sanitizer 是一个简单的方式来清理或过滤使用 Yii2 框架 的应用程序的输入。

PHP 8.x

2020-10-14 分支更新以支持 PHP 8.x

安装

安装此扩展的首选方式是通过 composer

运行以下命令

composer require oaksoftwaredev/yii2-sanitizer "^1.0.0"

或者将以下内容添加到你的 composer.json 文件的 require 部分中。

"oaksoftwaredev/yii2-sanitizer": "^1.0.0"

版本变更

注意:有关各种版本变更的详细信息,请参阅 变更日志

使用方法

添加以下内容到你的主配置文件的组件部分。

示例

'components' => [
    ...
    'sanitizer' => [           
        'class' => 'oaksoftwaredev\Yii2Sanitizer\Sanitize',                   
    ],
    ...
],

过滤输入数组

结果为

// data to be filtered
$data = [
    'name' => ' Farhan"',
    'address' => '<p>No 1, Residence ABC</p>',
    'postcode' => '81221A',
    'points' => '-152.1711B',
    'status' => 'C1',
];

// create a filters corresponding to the input data array
$filters = [
    'name' => ['trim', 'escape'],
    'address' => ['trim', 'escape', 'cast:string'],
    'postcode' => ['digit'],
    'points' => ['digit'],
    'status' => ['cast:int'],
];

// call sanitize function to filter an array of inputs
$filtered_data = Yii::$app->sanitizer->sanitize($data, $filters);
var_dump($filtered_data);

使用方法相对简单。你的过滤器数组需要与数据数组匹配,过滤器作为数组值。你可以组合过滤器,它们将按从左到右的顺序执行。

[
    'name' => 'Farhan\\\"'
    'address' => 'No 1, Residence ABC'
    'postcode' => 81221
    'points' => -152.1711
    'status' => '1'
]

过滤单个值

第一个参数是需要过滤的值。第二个参数是需要应用的过滤器。

// call filter function to filter a single value. You can add filter type as the second argument.
$filtered_data = Yii::$app->sanitizer->filter('<p>No 1, Residence ABC</p>', ['trim', 'cast:string']);
echo $filtered_data;

使用方法相对简单。你的过滤器数组需要与数据数组匹配,过滤器作为数组值。你可以组合过滤器,它们将按从左到右的顺序执行。

No 1, Residence ABC

可用过滤器

以下是可以使用的过滤器

以下是你可以使用的过滤器

许可证

Yii2 Sanitizer 根据 MIT 许可证 发布。