Skip to content

Commit bd340b7

Browse files
committed
add NEWS/UPGRADING
1 parent 3b05733 commit bd340b7

File tree

4 files changed

+32
-1
lines changed

4 files changed

+32
-1
lines changed

NEWS

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ PHP NEWS
1313

1414
- Core:
1515
. Added boolval(). (Jille Timmermans).
16+
. Fixed bug #18556 (Engine uses locale rules to handle class names). (Stas)
1617
. Fixed bug #61681 (Malformed grammar). (Nikita Popov, Etienne, Laruence).
1718
. Fixed bug #61038 (unpack("a5", "str\0\0") does not work as expected).
1819
(srgoogleguy, Gustavo)

UPGRADING

+2
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ PHP X.Y UPGRADE NOTES
2121
========================================
2222

2323
- Drop Windows XP and 2003 support. (Pierre)
24+
- All internal case insensitivity handling for class, fucntion and constant
25+
names is done according to ASCII rules, current locale settings are ignored.
2426

2527
========================================
2628
2. New Features

UPGRADING.INTERNALS

+28-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ UPGRADE NOTES - PHP X.Y
44

55
1. Internal API changes
66
a. Streams pooling API
7+
b. Lowercasing and locales
78

89
2. Build system changes
910
a. Unix build system changes
@@ -26,6 +27,32 @@ PHPAPI int php_stream_context_set_link(php_stream_context *context,
2627
PHPAPI int php_stream_context_del_link(php_stream_context *context,
2728
php_stream *stream);
2829

30+
b. Lowercasing and locales
31+
32+
The lowercasing functions in zend_operators.c were split into those that do
33+
lowercasing according to locale rules and those that do ASCII lowercasing.
34+
ASCII:
35+
36+
zend_str_tolower_copy
37+
zend_str_tolower_dup
38+
zend_str_tolower
39+
zend_binary_strcasecmp
40+
zend_binary_strncasecmp
41+
42+
Locale-based:
43+
zend_binary_strncasecmp_l
44+
zend_binary_strcasecmp_l
45+
zend_binary_zval_strcasecmp
46+
zend_binary_zval_strncasecmp
47+
string_compare_function_ex
48+
string_case_compare_function
49+
50+
Internal engine lowercasing will be using ASCII-only rules. User-facing functions,
51+
such as strcasecmp, will be using locale rules.
52+
53+
Two new functions - zend_binary_strncasecmp_l and zend_binary_strcasecmp_l - added as
54+
locale-based counterparts to zend_binary_strcasecmp and zend_binary_strncasecmp.
55+
2956
========================
3057
2. Build system changes
3158
========================
@@ -34,5 +61,5 @@ PHPAPI int php_stream_context_del_link(php_stream_context *context,
3461
-
3562

3663
b. Windows build system changes
37-
-
64+
- Drop Windows XP and 2003 support.
3865

Zend/tests/bug18556.phpt

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ foreach(get_declared_classes() as $class)
2525
{
2626
if(!class_exists($class))
2727
echo "$class No Longer Exists!\n";
28+
2829
}
2930
echo "Done.\n";
3031
?>

0 commit comments

Comments
 (0)