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