56e6296f868f05ef1fa1a50e6bc4853b7f836766
[squirrelmail.git] / functions / decode / iso_8859_1.php
1 <?php
2
3 /**
4 * decode/iso8859-1.php
5 *
6 * This file contains iso-8859-1 decoding function that is needed to read
7 * iso-8859-1 encoded mails in non-iso-8859-1 locale.
8 *
9 * @copyright 2003-2010 The SquirrelMail Project Team
10 * @license http://opensource.org/licenses/gpl-license.php GNU Public License
11 * @version $Id$
12 * @package squirrelmail
13 * @subpackage decode
14 */
15
16 /**
17 * Decode iso8859-1 string
18 * @param string $string Encoded string
19 * @return string $string Decoded string
20 */
21 function charset_decode_iso_8859_1 ($string) {
22 // don't do decoding when there are no 8bit symbols
23 if (! sq_is8bit($string,'iso-8859-1'))
24 return $string;
25
26 $string = preg_replace("/([\201-\237])/e","'&#' . ord('\\1') . ';'",$string);
27
28 /* I don't want to use 0xA0 (\240) in any ranges. RH73 may dislike it */
29 $string = str_replace("\240", '&#160;', $string);
30
31 $string = preg_replace("/([\241-\377])/e","'&#' . ord('\\1') . ';'",$string);
32 return $string;
33 }