Edit report at http://bugs.php.net/bug.php?id=53916&edit=1
ID: 53916
Comment by: thasypher at gmail dot com
Reported by: thasypher at gmail dot com
Summary: parse_ini_file unable to handle strings with certain
characters
Status: Feedback
Type: Bug
Package: Filesystem function related
Operating System: Debian 5
PHP Version: Irrelevant
Block user comment: N
Private report: N
New Comment:
A sample INI could be:
----
[data]
test_case = 1
some_server = localhost
more_stuff = 8.8.8.8
[test]
somevalue = 1
password_server.domain.tld = h1b{k&Tx$jt2
----
In this case, it throws an "Error parsing <filename> on line 8.
Also with:
---
[test]
some_thing = R3iDn3!rj3j
---
it will fail.
So ISTM that special characters are causing issues in the
parse_ini_file.
Previous Comments:
------------------------------------------------------------------------
[2011-02-04 10:46:39] [email protected]
What version of PHP are you running? This seems to behave as expected
in PHP 5.3.5.
Could you also provide a (short) sample file.ini, please?
------------------------------------------------------------------------
[2011-02-03 09:00:14] thasypher at gmail dot com
Obviously the test script should not contain a comma next to the true
value.
------------------------------------------------------------------------
[2011-02-03 08:56:52] thasypher at gmail dot com
Description:
------------
PHP seems to be unable to handle strings with certain signs (#$%) in an
INI file parsed with parse_ini_file.
It throws a warning while doing that.
Even though normally you would quote strings to overcome this issue, the
ConfigParser implementation of Python (for instance) does not do this.
Test script:
---------------
print_r(parse_ini_file('file.ini', true, ));
Expected result:
----------------
An ini file with certain characters will throw a warning and may not be
parsed completely.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=53916&edit=1