Размер файла: 1.88Kb
- <?php
-
- /** @noinspection PhpComposerExtensionStubsInspection */
-
- namespace PhpZip\Constants;
-
- /**
- * Class DosCodePage.
- */
- final class DosCodePage
- {
- const CP_LATIN_US = 'cp437';
-
- const CP_GREEK = 'cp737';
-
- const CP_BALT_RIM = 'cp775';
-
- const CP_LATIN1 = 'cp850';
-
- const CP_LATIN2 = 'cp852';
-
- const CP_CYRILLIC = 'cp855';
-
- const CP_TURKISH = 'cp857';
-
- const CP_PORTUGUESE = 'cp860';
-
- const CP_ICELANDIC = 'cp861';
-
- const CP_HEBREW = 'cp862';
-
- const CP_CANADA = 'cp863';
-
- const CP_ARABIC = 'cp864';
-
- const CP_NORDIC = 'cp865';
-
- const CP_CYRILLIC_RUSSIAN = 'cp866';
-
- const CP_GREEK2 = 'cp869';
-
- const CP_THAI = 'cp874';
-
- /** @var string[] */
- private static $CP_CHARSETS = [
- self::CP_LATIN_US,
- self::CP_GREEK,
- self::CP_BALT_RIM,
- self::CP_LATIN1,
- self::CP_LATIN2,
- self::CP_CYRILLIC,
- self::CP_TURKISH,
- self::CP_PORTUGUESE,
- self::CP_ICELANDIC,
- self::CP_HEBREW,
- self::CP_CANADA,
- self::CP_ARABIC,
- self::CP_NORDIC,
- self::CP_CYRILLIC_RUSSIAN,
- self::CP_GREEK2,
- self::CP_THAI,
- ];
-
- /**
- * @param string $str
- * @param string $sourceEncoding
- *
- * @return string
- */
- public static function toUTF8($str, $sourceEncoding)
- {
- $s = iconv($sourceEncoding, 'UTF-8', $str);
-
- if ($s === false) {
- return $str;
- }
-
- return $s;
- }
-
- /**
- * @param string $str
- * @param string $destEncoding
- *
- * @return string
- */
- public static function fromUTF8($str, $destEncoding)
- {
- $s = iconv('UTF-8', $destEncoding, $str);
-
- if ($s === false) {
- return $str;
- }
-
- return $s;
- }
-
- /**
- * @return string[]
- */
- public static function getCodePages()
- {
- return self::$CP_CHARSETS;
- }
- }