<?php
+
/**
* decode/iso8859-11.php
- * $Id$
- *
- * Copyright (c) 2003 The SquirrelMail Project Team
- * Licensed under the GNU GPL. For full terms see the file COPYING.
*
* This file contains iso-8859-11 decoding function that is needed to read
* iso-8859-11 encoded mails in non-iso-8859-11 locale.
- *
+ *
* Original data taken from:
* ftp://ftp.unicode.org/Public/MAPPINGS/ISO8859/8859-11.TXT
*
- * Name: ISO/IEC 8859-11:2001 to Unicode
- * Unicode version: 3.2
- * Table version: 1.0
- * Table format: Format A
- * Date: 2002 October 7
- * Authors: Ken Whistler <kenw@sybase.com>
+ * Name: ISO/IEC 8859-11:2001 to Unicode
+ * Unicode version: 3.2
+ * Table version: 1.0
+ * Table format: Format A
+ * Date: 2002 October 7
+ * Authors: Ken Whistler <kenw@sybase.com>
*
* Original copyright:
- * Copyright (c) 1999 Unicode, Inc. All Rights reserved.
+ * Copyright (c) 1999 Unicode, Inc. All Rights reserved.
+ *
+ * This file is provided as-is by Unicode, Inc. (The Unicode Consortium).
+ * No claims are made as to fitness for any particular purpose. No
+ * warranties of any kind are expressed or implied. The recipient
+ * agrees to determine applicability of information provided. If this
+ * file has been provided on optical media by Unicode, Inc., the sole
+ * remedy for any claim will be exchange of defective media within 90
+ * days of receipt.
*
- * This file is provided as-is by Unicode, Inc. (The Unicode Consortium).
- * No claims are made as to fitness for any particular purpose. No
- * warranties of any kind are expressed or implied. The recipient
- * agrees to determine applicability of information provided. If this
- * file has been provided on optical media by Unicode, Inc., the sole
- * remedy for any claim will be exchange of defective media within 90
- * days of receipt.
+ * Unicode, Inc. hereby grants the right to freely use the information
+ * supplied in this file in the creation of products supporting the
+ * Unicode Standard, and to make copies of this file in any form for
+ * internal or external distribution as long as this notice remains
+ * attached.
*
- * Unicode, Inc. hereby grants the right to freely use the information
- * supplied in this file in the creation of products supporting the
- * Unicode Standard, and to make copies of this file in any form for
- * internal or external distribution as long as this notice remains
- * attached.
+ * @copyright 2003-2018 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
+ * @version $Id$
* @package squirrelmail
* @subpackage decode
*/
/**
* Decode iso8859-11 string
* @param string $string Encoded string
- * @return string $string Decoded string
+ * @return string $string Decoded string
*/
function charset_decode_iso_8859_11 ($string) {
- global $default_charset;
-
- if (strtolower($default_charset) == 'iso-8859-11')
- return $string;
-
- /* Only do the slow convert if there are 8-bit characters */
- /* there is no 0x80-0x9F letters in ISO8859-* */
- if ( ! ereg("[\241-\377]", $string) )
+ // don't do decoding when there are no 8bit symbols
+ if (! sq_is8bit($string,'iso-8859-11'))
return $string;
$iso8859_11 = array(
- "\xA0" => ' ',
- "\xA1" => 'ก',
- "\xA2" => 'ข',
- "\xA3" => 'ฃ',
- "\xA4" => 'ค',
- "\xA5" => 'ฅ',
- "\xA6" => 'ฆ',
- "\xA7" => 'ง',
- "\xA8" => 'จ',
- "\xA9" => 'ฉ',
- "\xAA" => 'ช',
- "\xAB" => 'ซ',
- "\xAC" => 'ฌ',
- "\xAD" => 'ญ',
- "\xAE" => 'ฎ',
- "\xAF" => 'ฏ',
- "\xB0" => 'ฐ',
- "\xB1" => 'ฑ',
- "\xB2" => 'ฒ',
- "\xB3" => 'ณ',
- "\xB4" => 'ด',
- "\xB5" => 'ต',
- "\xB6" => 'ถ',
- "\xB7" => 'ท',
- "\xB8" => 'ธ',
- "\xB9" => 'น',
- "\xBA" => 'บ',
- "\xBB" => 'ป',
- "\xBC" => 'ผ',
- "\xBD" => 'ฝ',
- "\xBE" => 'พ',
- "\xBF" => 'ฟ',
- "\xC0" => 'ภ',
- "\xC1" => 'ม',
- "\xC2" => 'ย',
- "\xC3" => 'ร',
- "\xC4" => 'ฤ',
- "\xC5" => 'ล',
- "\xC6" => 'ฦ',
- "\xC7" => 'ว',
- "\xC8" => 'ศ',
- "\xC9" => 'ษ',
- "\xCA" => 'ส',
- "\xCB" => 'ห',
- "\xCC" => 'ฬ',
- "\xCD" => 'อ',
- "\xCE" => 'ฮ',
- "\xCF" => 'ฯ',
- "\xD0" => 'ะ',
- "\xD1" => 'ั',
- "\xD2" => 'า',
- "\xD3" => 'ำ',
- "\xD4" => 'ิ',
- "\xD5" => 'ี',
- "\xD6" => 'ึ',
- "\xD7" => 'ื',
- "\xD8" => 'ุ',
- "\xD9" => 'ู',
- "\xDA" => 'ฺ',
- "\xDF" => '฿',
- "\xE0" => 'เ',
- "\xE1" => 'แ',
- "\xE2" => 'โ',
- "\xE3" => 'ใ',
- "\xE4" => 'ไ',
- "\xE5" => 'ๅ',
- "\xE6" => 'ๆ',
- "\xE7" => '็',
- "\xE8" => '่',
- "\xE9" => '้',
- "\xEA" => '๊',
- "\xEB" => '๋',
- "\xEC" => '์',
- "\xED" => 'ํ',
- "\xEE" => '๎',
- "\xEF" => '๏',
- "\xF0" => '๐',
- "\xF1" => '๑',
- "\xF2" => '๒',
- "\xF3" => '๓',
- "\xF4" => '๔',
- "\xF5" => '๕',
- "\xF6" => '๖',
- "\xF7" => '๗',
- "\xF8" => '๘',
- "\xF9" => '๙',
- "\xFA" => '๚',
- "\xFB" => '๛'
+ "\xA0" => ' ',
+ "\xA1" => 'ก',
+ "\xA2" => 'ข',
+ "\xA3" => 'ฃ',
+ "\xA4" => 'ค',
+ "\xA5" => 'ฅ',
+ "\xA6" => 'ฆ',
+ "\xA7" => 'ง',
+ "\xA8" => 'จ',
+ "\xA9" => 'ฉ',
+ "\xAA" => 'ช',
+ "\xAB" => 'ซ',
+ "\xAC" => 'ฌ',
+ "\xAD" => 'ญ',
+ "\xAE" => 'ฎ',
+ "\xAF" => 'ฏ',
+ "\xB0" => 'ฐ',
+ "\xB1" => 'ฑ',
+ "\xB2" => 'ฒ',
+ "\xB3" => 'ณ',
+ "\xB4" => 'ด',
+ "\xB5" => 'ต',
+ "\xB6" => 'ถ',
+ "\xB7" => 'ท',
+ "\xB8" => 'ธ',
+ "\xB9" => 'น',
+ "\xBA" => 'บ',
+ "\xBB" => 'ป',
+ "\xBC" => 'ผ',
+ "\xBD" => 'ฝ',
+ "\xBE" => 'พ',
+ "\xBF" => 'ฟ',
+ "\xC0" => 'ภ',
+ "\xC1" => 'ม',
+ "\xC2" => 'ย',
+ "\xC3" => 'ร',
+ "\xC4" => 'ฤ',
+ "\xC5" => 'ล',
+ "\xC6" => 'ฦ',
+ "\xC7" => 'ว',
+ "\xC8" => 'ศ',
+ "\xC9" => 'ษ',
+ "\xCA" => 'ส',
+ "\xCB" => 'ห',
+ "\xCC" => 'ฬ',
+ "\xCD" => 'อ',
+ "\xCE" => 'ฮ',
+ "\xCF" => 'ฯ',
+ "\xD0" => 'ะ',
+ "\xD1" => 'ั',
+ "\xD2" => 'า',
+ "\xD3" => 'ำ',
+ "\xD4" => 'ิ',
+ "\xD5" => 'ี',
+ "\xD6" => 'ึ',
+ "\xD7" => 'ื',
+ "\xD8" => 'ุ',
+ "\xD9" => 'ู',
+ "\xDA" => 'ฺ',
+ "\xDF" => '฿',
+ "\xE0" => 'เ',
+ "\xE1" => 'แ',
+ "\xE2" => 'โ',
+ "\xE3" => 'ใ',
+ "\xE4" => 'ไ',
+ "\xE5" => 'ๅ',
+ "\xE6" => 'ๆ',
+ "\xE7" => '็',
+ "\xE8" => '่',
+ "\xE9" => '้',
+ "\xEA" => '๊',
+ "\xEB" => '๋',
+ "\xEC" => '์',
+ "\xED" => 'ํ',
+ "\xEE" => '๎',
+ "\xEF" => '๏',
+ "\xF0" => '๐',
+ "\xF1" => '๑',
+ "\xF2" => '๒',
+ "\xF3" => '๓',
+ "\xF4" => '๔',
+ "\xF5" => '๕',
+ "\xF6" => '๖',
+ "\xF7" => '๗',
+ "\xF8" => '๘',
+ "\xF9" => '๙',
+ "\xFA" => '๚',
+ "\xFB" => '๛'
);
$string = str_replace(array_keys($iso8859_11), array_values($iso8859_11), $string);
return $string;
}
-
-?>