ID: 45012 User updated by: mjijackson at gmail dot com Reported By: mjijackson at gmail dot com Status: Bogus Bug Type: Filesystem function related Operating System: Win32 PHP Version: 5.2.6 New Comment:
I see. But shouldn't it include all of PHP's bitwise operators (http://us.php.net/language.operators.bitwise)? The fact that it only parses a subset is confusing and should probably be documented on parse_ini_file()'s documentation page. Or, perhaps the php.ini comment could be changed from: "Expressions in the INI file are limited to bitwise operators" (implying all bitwise operators) to "Expressions in the INI file are limited to the following bitwise operators" That seems a bit clearer to me. Thanks for your quick response. Previous Comments: ------------------------------------------------------------------------ [2008-05-15 21:50:01] [EMAIL PROTECTED] The php.ini says: ; Expressions in the INI file are limited to bitwise operators and parentheses: ; | bitwise OR ; & bitwise AND ; ~ bitwise NOT ; ! boolean NOT This is valid also to files parsed by parse_ini_file() function. ------------------------------------------------------------------------ [2008-05-15 18:42:17] mjijackson at gmail dot com Changed OS from Windows XP SP2 to more general Win32 ------------------------------------------------------------------------ [2008-05-15 17:53:19] mjijackson at gmail dot com Description: ------------ parse_ini_file() correctly uses the | and & bitwise operators on constants. However, it does not correctly interpret the ^ (XOR) operator. Instead, it interprets the entire statement as a string. Reproduce code: --------------- *** test.ini *** or = E_ERROR | E_PARSE xor = E_ALL ^ E_NOTICE *** PHP *** $ini = parse_ini_file('test.ini'); echo $ini['or'] . ' ' . (E_ERROR | E_PARSE); echo "\n"; echo $ini['xor'] . ' ' . (E_ALL ^ E_NOTICE); Expected result: ---------------- 5 5 6135 6135 Actual result: -------------- 5 5 E_ALL ^ E_NOTICE 6135 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=45012&edit=1
