1 | <?php |
||
7 | class Bom |
||
8 | { |
||
9 | /** UTF-8 BOM sequence */ |
||
10 | const BOM_UTF8 = "\xEF\xBB\xBF"; |
||
11 | /** UTF-16 BE BOM sequence */ |
||
12 | const BOM_UTF16_BE = "\xFE\xFF"; |
||
13 | /** UTF-16 LE BOM sequence */ |
||
14 | const BOM_UTF16_LE = "\xFF\xFE"; |
||
15 | /** UTF-32 BE BOM sequence */ |
||
16 | const BOM_UTF32_BE = "\x00\x00\xFE\xFF"; |
||
17 | /** UTF-32 LE BOM sequence */ |
||
18 | const BOM_UTF32_LE = "\x00\x00\xFF\xFE"; |
||
19 | |||
20 | /** @var string[] */ |
||
21 | static protected $encodingMap = [ |
||
22 | self::BOM_UTF8 => 'UTF-8', |
||
23 | self::BOM_UTF16_BE => 'UTF-16BE', |
||
24 | self::BOM_UTF16_LE => 'UTF-16LE', |
||
25 | self::BOM_UTF32_BE => 'UTF-32BE', |
||
26 | self::BOM_UTF32_LE => 'UTF-32LE', |
||
27 | ]; |
||
28 | |||
29 | /** |
||
30 | * @param string $bom |
||
31 | * |
||
32 | * @return string |
||
33 | */ |
||
34 | 9 | public static function getEncoding($bom) |
|
42 | } |
||
43 |