shieldfy / sniffer
嗅探输入类型
1.1.3
2017-08-03 12:07 UTC
Requires
- php: >=5.6
Requires (Dev)
- phpunit/phpunit: 5.5.*
This package is not auto-updated.
Last update: 2024-09-24 23:37:57 UTC
README
Shieldfy Sniffer 是一个小型 Composer 包,用于检测输入类型,目前支持 4 种类型(整数、字符串、JSON、序列化)
安装
通过 Composer
composer require shieldfy/sniffer
用法及示例
$type = (new \Shieldfy\Sniffer\Sniffer)->sniff('12.5'); //number $type = (new \Shieldfy\Sniffer\Sniffer)->sniff('hello world'); //string $type = (new \Shieldfy\Sniffer\Sniffer)->sniff(json_encode(['hello'=>1,'world'=>'!'])); //json $type = (new \Shieldfy\Sniffer\Sniffer)->sniff(serialize(['hello'=>1,'world'=>'!'])); //serialize //you can add more than value as array $type = (new \Shieldfy\Sniffer\Sniffer)->sniff(['555','abc']); //test against particular type $result = (new \Shieldfy\Sniffer\Sniffer)->is('123456789','number'); //true //you can register your own sniffer on the runtime $type = (new \Shieldfy\Sniffer\Sniffer)->register('hello',function($input){ if(strstr($input,'hello')) return true; return false; })->sniff('say hello world');
关于序列化的说明
序列化/反序列化可能存在危险,因为它可以转换对象,可能被用于执行对象注入攻击。因此,在 PHP 7 之前的版本中不允许显式嗅探,因为 PHP 7 提供了新的选项来防止对象序列化,请参阅此处
贡献
感谢您考虑为这个项目做出贡献!我们非常欢迎错误报告、功能请求和拉取请求。
安全漏洞
如果您在此项目中发现了安全漏洞,请发送电子邮件至 security@shieldfy.com。