[prev in list] [next in list] [prev in thread] [next in thread] 

List:       php-doc-bugs
Subject:    [DOC-BUGS] [PHP-BUG] Bug #69114 [NEW]: Undocumented 5.6 BC Break: default encoding ISO-8859-1 -> UTF
From:       "maggus dot staab at googlemail dot com"<php-bugs () lists ! php ! net>
Date:       2015-02-24 13:00:18
Message-ID: bug-69114 () bugs ! php ! net
[Download RAW message or body]

From:             maggus dot staab at googlemail dot com
Operating system: 
PHP version:      5.6.6
Package:          Documentation problem
Bug Type:         Bug
Bug description:Undocumented 5.6 BC Break: default encoding ISO-8859-1 -> UTF-8

Description:
------------
With PHP5.6 the default encoding changed from ISO-8859-1 to UTF8.
This bc break is not mentioned in the list of BC changes:

http://php.net/manual/en/migration56.incompatible.php

The charset related docs mention that 
    iconv.input_encoding
    iconv.output_encoding
    iconv.internal_encoding
    mbstring.http_input
    mbstring.http_output
    mbstring.internal_encoding
is deprecated as of 5.6 and we should use default_charset instead:
http://php.net/manual/en/ini.core.php#ini.default-charset

For non-utf8 legacy app which are updated to PHP5.6 it is not clearly
documented how the path is. just setting ini_set('default_charset',
'ISO-8859-1'); does not do the trick, because of the deprecated above
mentioned settings still default to UTF8.

It feels like non-utf8 apps can only be configured using deprecated
settings like (which does not work by the way)
       	        ini_set('default_charset', 'ISO-8859-1');
                iconv_set_encoding("internal_encoding", 'ISO-8859-1');
                iconv_set_encoding("output_encoding", 'ISO-8859-1');
                iconv_set_encoding("input_encoding", 'ISO-8859-1');

How is the correct way to migrate a non-utf8 app to 5.6? How should the
settings look like to be compatible to 5.5 defaults and also be future
proof (so dont rely on deprecated settings)?
Such a path should be documented in the migration guide.


-- 
Edit bug report at https://bugs.php.net/bug.php?id=69114&edit=1
-- 
Try a snapshot (PHP 5.4):   https://bugs.php.net/fix.php?id=69114&r=trysnapshot54
Try a snapshot (PHP 5.5):   https://bugs.php.net/fix.php?id=69114&r=trysnapshot55
Try a snapshot (trunk):     https://bugs.php.net/fix.php?id=69114&r=trysnapshottrunk
Fixed in SVN:               https://bugs.php.net/fix.php?id=69114&r=fixed
Fixed in release:           https://bugs.php.net/fix.php?id=69114&r=alreadyfixed
Need backtrace:             https://bugs.php.net/fix.php?id=69114&r=needtrace
Need Reproduce Script:      https://bugs.php.net/fix.php?id=69114&r=needscript
Try newer version:          https://bugs.php.net/fix.php?id=69114&r=oldversion
Not developer issue:        https://bugs.php.net/fix.php?id=69114&r=support
Expected behavior:          https://bugs.php.net/fix.php?id=69114&r=notwrong
Not enough info:            https://bugs.php.net/fix.php?id=69114&r=notenoughinfo
Submitted twice:            https://bugs.php.net/fix.php?id=69114&r=submittedtwice
register_globals:           https://bugs.php.net/fix.php?id=69114&r=globals
PHP 4 support discontinued: https://bugs.php.net/fix.php?id=69114&r=php4
Daylight Savings:           https://bugs.php.net/fix.php?id=69114&r=dst
IIS Stability:              https://bugs.php.net/fix.php?id=69114&r=isapi
Install GNU Sed:            https://bugs.php.net/fix.php?id=69114&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=69114&r=float
No Zend Extensions:         https://bugs.php.net/fix.php?id=69114&r=nozend
MySQL Configuration Error:  https://bugs.php.net/fix.php?id=69114&r=mysqlcfg


-- 
PHP Documentation Bugs Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic