josantonius/validate

该包已被废弃,不再维护。未建议替代包。

PHP 简单库,用于管理数据类型。

1.0.1 2022-08-18 17:48 UTC

This package is auto-updated.

Last update: 2022-08-18 19:40:14 UTC


README

Latest Stable Version License

西班牙语版本

PHP 简单库,用于管理数据类型。

要求

此库支持 PHP 7.4 版本。

安装

安装此扩展的首选方法是使用 Composer

要安装 PHP Validate 库,只需

composer require Josantonius/Validate

上述命令将只安装必要的文件,如果您希望 下载整个源代码,可以使用

composer require Josantonius/Validate --prefer-source

您还可以使用 Git 克隆完整仓库

$ git clone https://github.com/Josantonius/PHP-Validate.git

手动安装

下载 Validate.php:

wget https://raw.githubusercontent.com/Josantonius/PHP-Validate/master/src/Validate.php

可用方法

此库中的可用方法

- 以数组形式返回参数

Validate::asArray($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

- 以对象形式返回参数

Validate::asObject($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

- 以 JSON 形式返回参数

Validate::asJson($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

- 以字符串形式返回参数

Validate::asString($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

- 以整数形式返回参数

Validate::asInteger($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

- 以浮点数形式返回参数

Validate::asFloat($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

- 以布尔形式返回参数

Validate::asBoolean($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

- 以 IP 形式返回参数

Validate::asIp($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

- 以 URL 形式返回参数

Validate::asUrl($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

- 以 URL 形式返回参数

Validate::asEmail($data, $default);
属性 描述 类型 必需 默认
$data 要转换的数据。 mixed
$default 错误情况下的默认值。 mixed ´null´

返回 (mixed|null) → 值,null 或自定义返回值

快速入门

要使用 Composer 使用此库

require __DIR__ . '/vendor/autoload.php';

use Josantonius\Validate\Validate;

或者如果您是手动安装的,请使用它

require_once __DIR__ . '/Validate.php';

use Josantonius\Validate\Validate;

用法

此库的使用示例

- 数组

- 当传递一个数组时

var_dump(Validate::asArray(['foo', 'bar'])); // ['foo', 'bar']

- 当传递一个 JSON 数组时

var_dump(Validate::asArray('["foo", "bar"]')); // ['foo', 'bar']

- 当传递一个对象时

$data = new \StdClass;

$data->foo = 'bar';

var_dump(Validate::asArray($data)); // ['foo' => 'bar']

- 当传递一个 JSON 对象时

var_dump(Validate::asArray('{"foo": "bar"}')); // ['foo' => 'bar']

- 当没有正确数组时,参数返回默认值

var_dump(Validate::asArray(false)); // null

var_dump(Validate::asArray(false, ['foo', 'bar'])); // ['foo', 'bar']

- 对象

- 当传递一个对象时

$data = new \StdClass;

$data->foo = 'bar';

$object = Validate::asObject($data);

echo $object->foo; // 'bar'

- 当传递一个 JSON 对象时

$object = Validate::asObject('{"foo": "bar"}');

echo $object->foo; // 'bar'

- 当传递一个数组时

$object = Validate::asObject(['foo' => 'bar']));

echo $object->foo; // 'bar'

- 当没有正确对象时,参数返回默认值

var_dump(Validate::asObject(false)); // null

$object = Validate::asObject(false, ['foo' => 'bar']);

echo $object->foo; // 'bar'

- JSON

- 当传递一个 JSON 对象时

echo Validate::asJson('{"foo": "bar"}'); // '{"foo": "bar"}'

- 当传递一个数组时

echo Validate::asJson(['foo' => 'bar']); // '{"foo":"bar"}'

- 当传递一个对象时

$data = new \StdClass;

$data->foo = 'bar';

echo Validate::asJson($data); // '{"foo":"bar"}'

- 当没有正确 JSON 时,参数返回默认值

var_dump(Validate::asJson(false)); // null

echo Validate::asJson(false, '["foo", "bar"]'); // '["foo", "bar"]'

- 字符串

- 当传递一个字符串时

echo Validate::asString('foo'); // 'foo'

- 当传递一个整数时

echo Validate::asString(221104); // '221104'

- 当没有正确字符串时,参数返回默认值

var_dump(Validate::asString(false)); // null

echo Validate::asString(false, 'foo'); // 'foo'

- 整数

- 当传递一个整数时

echo Validate::asInteger(8); // 8

- 当传递一个字符串时

echo Validate::asInteger('8'); // 8

- 当没有正确整数时,参数返回默认值

var_dump(Validate::asInteger(false)); // null

echo Validate::asInteger(false, 8); // 8

- FLOAT

- 当传入一个浮点数时

echo Validate::asFloat(8.8); // 8.8

- 当传入一个字符串时

echo Validate::asFloat('8.8'); // 8.8

- 当没有正确浮点数时,参数返回默认值

var_dump(Validate::asFloat(false)); // null

echo Validate::asFloat(false, 8.8); // 8.8

- BOOLEAN

- 当传入布尔值 true 时

var_dump(Validate::asBoolean(true)); // true

- 当传入字符串 true 时

var_dump(Validate::asBoolean('true')); // true

- 当传入整数 1 时

var_dump(Validate::asBoolean(1)); // true

- 当传入字符串 1 时

var_dump(Validate::asBoolean('1')); // true

- 当传入布尔值 false 时

var_dump(Validate::asBoolean(false)); // false

- 当传入字符串 false 时

var_dump(Validate::asBoolean('false')); // false

- 当传入整数 0 时

var_dump(Validate::asBoolean(0)); // false

- 当传入字符串 0 时

var_dump(Validate::asBoolean('0')); // false

- 当没有正确布尔值时,参数返回默认值

var_dump(Validate::asBoolean(null)); // null

echo Validate::asBoolean(null, true); // true

- IP

- 当传入 IP 时

echo Validate::asIp('255.255.255.0'); // '255.255.255.0'

- 当没有正确 IP 时,参数返回默认值

var_dump(Validate::asIp(null)); // null

echo Validate::asIp(null, '255.255.255.0'); // '255.255.255.0'

- URL

- 当传入 URL 时

echo Validate::asUrl('https://josantonius.com'); // 'https://josantonius.com'

- 当没有正确 URL 时,参数返回默认值

var_dump(Validate::asUrl(null)); // null

echo Validate::asUrl(null, 'https://josantonius.com'); // 'https://josantonius.com'

- Email

- 当传入 Email 时

echo Validate::asEmail('hello@josantonius.com'); // 'hello@josantonius.com'

- 当没有正确 Email 时,参数返回默认值

var_dump(Validate::asEmail(null)); // null

echo Validate::asEmail(null, 'hello@josantonius.com'); // 'hello@josantonius.com'

测试

要运行测试,您只需要安装Composer并执行以下命令

git clone https://github.com/Josantonius/PHP-Validate.git

cd PHP-Validate

composer install

使用PHPUnit运行单元测试

composer phpunit

使用PSR2代码标准测试,使用PHPCS

composer phpcs

运行PHP Mess Detector测试,以检测代码风格的不一致性

composer phpmd

运行所有之前的测试

composer tests

赞助

如果这个项目帮助您减少了开发时间,您可以赞助我以支持我的开源工作 😊

许可证

本存储库采用MIT许可证许可。

版权所有 © 2018-2022,Josantonius