# The Spoofchecker class

(PHP 5 >= 5.4.0, PHP 7, PECL intl >= 2.0.0)

## はじめに

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.

## クラス概要

Spoofchecker {
/* Constants */
const integer SINGLE_SCRIPT_CONFUSABLE = 1 ;
const integer MIXED_SCRIPT_CONFUSABLE = 2 ;
const integer WHOLE_SCRIPT_CONFUSABLE = 4 ;
const integer ANY_CASE = 8 ;
const integer SINGLE_SCRIPT = 16 ;
const integer INVISIBLE = 32 ;
const integer CHAR_LIMIT = 64 ;
/* メソッド */
public areConfusable ( string `$str1` , string `$str2` [, string `&$error` ] ) : bool
public __construct ( void )
public isSuspicious ( string `$text` [, string `&$error` ] ) : bool
public setAllowedLocales ( string `$locale_list` ) : void
public setChecks ( long `$checks` ) : void
}

## 定義済み定数

`Spoofchecker::SINGLE_SCRIPT_CONFUSABLE`

`Spoofchecker::MIXED_SCRIPT_CONFUSABLE`

`Spoofchecker::WHOLE_SCRIPT_CONFUSABLE`

`Spoofchecker::ANY_CASE`

`Spoofchecker::SINGLE_SCRIPT`

`Spoofchecker::INVISIBLE`

`Spoofchecker::CHAR_LIMIT`

## 目次

- 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 — チェック時に使うロケールを設定する
- Spoofchecker::setChecks — 実行するチェックを設定する