maximantonisin / veles-hide-string
字符串安全/匿名隐藏
v1.3.0
2022-10-07 19:09 UTC
Requires
- php: ^7.2|^8.0
- symfony/twig-bridge: ^3.4
Requires (Dev)
- phpunit/phpunit: ^8.0
This package is auto-updated.
Last update: 2024-09-12 17:49:24 UTC
README
作者
Maxim Antonisin
maxim.antonisin@gmail.com
领英
描述
本软件包旨在与文本/字符串一起工作,以替换/隐藏敏感信息。
要求
- PHP 7.2+
- composer
- symfony/twig-bridge
选项
length
- 要替换的字符数。offset
- 替换前要跳过的字符数。hideChar
- 用于替换的特殊符号。
使用
字符串 (MaximAntonisin\Veles\Type\StringTypeInterface::class)
选项
此字符串类型格式没有额外的选项。此类型是默认的。
替换字符
use MaximAntonisin\Veles\VelesHide; use MaximAntonisin\Veles\Type\StringTypeInterface; $result = VelesHide::hide('exampleDomainName@example.com', [ StringTypeStringTypeInterface::OPTION_LENGTH => 4, StringTypeInterface::OPTION_OFFSET => 2, ]); var_dump($result); //string(29) "ex****eDomainName@example.com"
Email (MaximAntonisin\Veles\Type\EmailTypeInterface::class)
选项
domainLength
- 替换域名部分的字符数。domainOffset
- 替换域名部分时跳过的字符数。
基本用法
use MaximAntonisin\Veles\VelesHide; use MaximAntonisin\Veles\Type\EmailTypeInterface; $result = VelesHide::hide('exampleDomainName@example.com', [ EmailTypeInterface::OPTION_LENGTH => 4, EmailTypeInterface::OPTION_OFFSET => 2, ], 'email'); var_dump($result); //string(29) "ex****eDomainName@example.com"
替换电子邮件名称和域名部分
use MaximAntonisin\Veles\VelesHide; use MaximAntonisin\Veles\Type\EmailTypeInterface; $result = VelesHide::hide('exampleDomainName@example.com', [ EmailTypeEmailTypeInterface::OPTION_DOMAIN_LENGTH => 4, EmailTypeInterface::OPTION_DOMAIN_OFFSET => 2, ], 'email'); var_dump($result); //string(29) "e****leDomainName@ex****e.com"
仅替换电子邮件域名部分
use MaximAntonisin\Veles\VelesHide; use MaximAntonisin\Veles\Type\EmailTypeInterface; $result = VelesHide::hide('exampleDomainName@example.com', [ EmailTypeInterface::OPTION_LENGTH => 0, EmailTypeInterface::OPTION_DOMAIN_LENGTH => 4, EmailTypeInterface::OPTION_DOMAIN_OFFSET => 2, ], 'email'); var_dump($result); //string(29) "exampleDomainName@ex****e.com"
Url (MaximAntonisin\Veles\Type\UrlTypeInterface::class)
选项
schemeLength
- 替换方案部分的字符数。schemeOffset
- 替换方案部分时跳过的字符数。queryLength
- 替换查询部分的字符数。queryOffset
- 替换查询部分时跳过的字符数。pathLength
- 替换路径部分的字符数。pathOffset
- 替换路径部分时跳过的字符数。
基本用法
use MaximAntonisin\Veles\VelesHide; use MaximAntonisin\Veles\Type\UrlTypeInterface; $result = VelesHide::hide('https://foo.example.com/path/to/something?queryParam=queryValue', [ UrlTypeInterface::OPTION_LENGTH => 4, UrlTypeInterface::OPTION_OFFSET => 2, ], 'url'); var_dump($result); //string(23) "https://fo****ample.com"
替换方案
use MaximAntonisin\Veles\VelesHide; use MaximAntonisin\Veles\Type\UrlTypeInterface; $result = VelesHide::hide('https://foo.example.com/path/to/something?queryParam=queryValue', [ UrlTypeInterface::OPTION_LENGTH => 0, UrlTypeInterface::OPTION_SCHEME_LENGTH => 2, UrlTypeInterface::OPTION_SCHEME_OFFSET => 2, ], 'url'); var_dump($result); //string(23) "ht**s://foo.example.com"
替换路径
use MaximAntonisin\Veles\VelesHide; use MaximAntonisin\Veles\Type\UrlTypeInterface; $result = VelesHide::hide('https://foo.example.com/path/to/something?queryParam=queryValue', [ UrlTypeInterface::OPTION_LENGTH => 0, UrlTypeInterface::OPTION_PATH_LENGTH => 6, UrlTypeInterface::OPTION_PATH_OFFSET => 2, ], 'url'); var_dump($result); //string(41) "https://foo.example.com/p******/something"
替换查询
use MaximAntonisin\Veles\VelesHide; use MaximAntonisin\Veles\Type\UrlTypeInterface; $result = VelesHide::hide('https://foo.example.com/path/to/something?queryParam=queryValue', [ UrlTypeInterface::OPTION_LENGTH => 0, UrlTypeInterface::OPTION_PATH_LENGTH => 0, UrlTypeInterface::OPTION_QUERY_LENGTH => 4, UrlTypeInterface::OPTION_QUERY_OFFSET => 2, ], 'url'); var_dump($result); //string(63) "https://foo.example.com/path/to/something?qu****aram=queryValue"