Browse Source
MFH: fix #41445 (parse_ini_file() has a problem with certain types of integer as sections)
experimental/5.2-WITH_DRCP
MFH: fix #41445 (parse_ini_file() has a problem with certain types of integer as sections)
experimental/5.2-WITH_DRCP
4 changed files with 144 additions and 23 deletions
-
2NEWS
-
36ext/standard/basic_functions.c
-
75ext/standard/tests/general_functions/bug41445.phpt
-
54ext/standard/tests/general_functions/bug41445_1.phpt
@ -0,0 +1,75 @@ |
|||
--TEST-- |
|||
Bug #41445 (parse_ini_file() function parses octal numbers in section names) |
|||
--FILE-- |
|||
<?php |
|||
|
|||
$file = dirname(__FILE__)."/bug41445.ini"; |
|||
|
|||
$data = <<<DATA |
|||
[001099030277] |
|||
option1 = yes |
|||
|
|||
[011099030277] |
|||
option2 = yes |
|||
DATA; |
|||
|
|||
file_put_contents($file, $data); |
|||
|
|||
var_dump(parse_ini_file($file, TRUE)); |
|||
var_dump(parse_ini_file($file)); |
|||
|
|||
$data = <<<DATA |
|||
[23.44] |
|||
option1 = yes |
|||
|
|||
[9633337363542736472364] |
|||
option2 = yes |
|||
DATA; |
|||
|
|||
file_put_contents($file, $data); |
|||
|
|||
var_dump(parse_ini_file($file, TRUE)); |
|||
var_dump(parse_ini_file($file)); |
|||
|
|||
@unlink($file); |
|||
|
|||
echo "Done\n"; |
|||
?> |
|||
--EXPECTF-- |
|||
array(2) { |
|||
["001099030277"]=> |
|||
array(1) { |
|||
["option1"]=> |
|||
string(1) "1" |
|||
} |
|||
["011099030277"]=> |
|||
array(1) { |
|||
["option2"]=> |
|||
string(1) "1" |
|||
} |
|||
} |
|||
array(2) { |
|||
["option1"]=> |
|||
string(1) "1" |
|||
["option2"]=> |
|||
string(1) "1" |
|||
} |
|||
array(2) { |
|||
["23.44"]=> |
|||
array(1) { |
|||
["option1"]=> |
|||
string(1) "1" |
|||
} |
|||
["9633337363542736472364"]=> |
|||
array(1) { |
|||
["option2"]=> |
|||
string(1) "1" |
|||
} |
|||
} |
|||
array(2) { |
|||
["option1"]=> |
|||
string(1) "1" |
|||
["option2"]=> |
|||
string(1) "1" |
|||
} |
|||
Done |
|||
@ -0,0 +1,54 @@ |
|||
--TEST-- |
|||
Bug #41445 (parse_ini_file() function parses octal numbers in section names) - 2 |
|||
--FILE-- |
|||
<?php |
|||
|
|||
$file = dirname(__FILE__)."/bug41445.ini"; |
|||
|
|||
$data = <<<DATA |
|||
[2454.33] |
|||
09 = yes |
|||
|
|||
[9876543] |
|||
098765434567876543 = yes |
|||
|
|||
[09876543] |
|||
987654345678765432456798765434567876543 = yes |
|||
DATA; |
|||
|
|||
file_put_contents($file, $data); |
|||
|
|||
var_dump(parse_ini_file($file, TRUE)); |
|||
var_dump(parse_ini_file($file)); |
|||
|
|||
@unlink($file); |
|||
|
|||
echo "Done\n"; |
|||
?> |
|||
--EXPECTF-- |
|||
array(3) { |
|||
["2454.33"]=> |
|||
array(1) { |
|||
["09"]=> |
|||
string(1) "1" |
|||
} |
|||
[9876543]=> |
|||
array(1) { |
|||
["098765434567876543"]=> |
|||
string(1) "1" |
|||
} |
|||
["09876543"]=> |
|||
array(1) { |
|||
["987654345678765432456798765434567876543"]=> |
|||
string(1) "1" |
|||
} |
|||
} |
|||
array(3) { |
|||
["09"]=> |
|||
string(1) "1" |
|||
["098765434567876543"]=> |
|||
string(1) "1" |
|||
["987654345678765432456798765434567876543"]=> |
|||
string(1) "1" |
|||
} |
|||
Done |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue