The Spoofchecker class
(PHP 5 >= 5.4.0, PHP 7, PHP 8, PECL intl >= 2.0.0)
Introduction
This class is provided because Unicode contains large number of characters and incorporates the varied writing systems of the world and their incorrect usage can expose programs or systems to possible security attacks using characters similarity.
Provided methods allow to check whether an individual string is likely an attempt at confusing the reader (spoof detection), such as "pаypаl" spelled with Cyrillic 'а' characters.
Class synopsis
Predefined Constants
Spoofchecker::SINGLE_SCRIPT_CONFUSABLEintSpoofchecker::MIXED_SCRIPT_CONFUSABLEintSpoofchecker::WHOLE_SCRIPT_CONFUSABLEintSpoofchecker::ANY_CASEintSpoofchecker::SINGLE_SCRIPTintSpoofchecker::INVISIBLEintSpoofchecker::CHAR_LIMITintSpoofchecker::ASCIIintSpoofchecker::HIGHLY_RESTRICTIVEintSpoofchecker::MODERATELY_RESTRICTIVEintSpoofchecker::MINIMALLY_RESTRICTIVEintSpoofchecker::UNRESTRICTIVEintSpoofchecker::SINGLE_SCRIPT_RESTRICTIVEintSpoofchecker::MIXED_NUMBERSintSpoofchecker::IGNORE_SPACEintSpoofchecker::CASE_INSENSITIVEint- Enables case-insensitive matching
Spoofchecker::ADD_CASE_MAPPINGSintAdds all case mappings for each element in the set
Spoofchecker::SIMPLE_CASE_INSENSITIVEint- Enables case-insensitive matching
Changelog
| Version | Description |
|---|---|
| 8.4.0 | Added Spoofchecker::IGNORE_SPACE, Spoofchecker::CASE_INSENSITIVE, Spoofchecker::ADD_CASE_MAPPINGS, Spoofchecker::SIMPLE_CASE_INSENSITIVE. |
| 8.4.0 | The class constants are now typed. |
| 7.3.0 | Class constants used by Spoofchecker::setRestrictionLevel() such as Spoofchecker::ASCII, Spoofchecker::HIGHLY_RESTRICTIVE, Spoofchecker::MODERATELY_RESTRICTIVE, Spoofchecker::MINIMALLY_RESTRICTIVE, Spoofchecker::UNRESTRICTIVE, Spoofchecker::SINGLE_SCRIPT_RESTRICTIVE has been added. |
Table of Contents
- Spoofchecker::areConfusable — Checks if given strings can be confused
- Spoofchecker::__construct — Constructor
- Spoofchecker::isSuspicious — Checks if a given text contains any suspicious characters
- Spoofchecker::setAllowedLocales — Locales to use when running checks
- Spoofchecker::setChecks — Set the checks to run
- Spoofchecker::setRestrictionLevel — Set the restriction level
↑ and ↓ to navigate • Enter to select • Esc to close • / to open