--TEST-- Test parse_ini_file() function --FILE-- ] ; start of ini file [Constans] one = 1 five = 5 animal = BIRD Language = PHP PHP_CONSTANT = 1.2345678 10 = Ten HELLO = HELLO [date] date = time = [paths] path = /usr/local/bin URL = http://www.php.net [Decimal] Decimal_value1 = 100 Decimal_value2 = -100 Decimal_value3 = -2147483647 Decimal_value4 = 2147483647 Decimal_value5 = -2147483648 Decimal_value6 = 2147483648 [Octal] Octal_value = 0100 [Hex] Hex_value1 = 0x101 Hex_Value2 = 0x102 Hex_Value2 = 0x103 [Non-alphanumerics_as_values] ;Non-alpha numeric chars without quotes Non_alpha1 = ; Non_alpha2 = + Non_alpha3 = * Non_alpha4 = % Non_alpha5 = <> Non_alpha6 = @ Non_alpha7 = # Non_alpha8 = - Non_alpha9 = : Non_alpha10 = ? Non_alpha11 = / Non_alpha12 = \ ;These chars have a special meaning when used in the value, ; hence parser throws an error ;Non_alpha13 = & ;Non_alpha14 = ^ ;Non_alpha15 = {} ;Non_alpha16 = | ;Non_alpha17 = ~ ;Non_alpha18 = ! ;Non_alpha19 = $ ;Non_alpha20 = () Non_alpha1_quotes = ";" Non_alpha2_quotes = "+" Non_alpha3_quotes = "*" Non_alpha4_quotes = "%" Non_alpha5_quotes = "<>" Non_alpha6_quotes = "@" Non_alpha7_quotes = "#" Non_alpha8_quotes = "^" Non_alpha9_quotes = "-" Non_alpha10_quotes = "=" Non_alpha11_quotes = ":" Non_alpha12_quotes = "?" Non_alpha13_quotes = "/" ;Non_alpha14_quotes = "\" Non_alpha15_quotes = "&" Non_alpha16_quotes = "{}" Non_alpha17_quotes = "|" Non_alpha18_quotes = "~" Non_alpha19_quotes = "!" ;Non_alpha20_quotes = "$" Non_alpha21_quotes = "()" [Non-alpha numerics in strings] ;expected error, as the non-alphanumeric chars not enclosed in double quotes("") Non_alpha_string1 = Hello@world ;Non_alpha_string2 = Hello!world ;Non_alpha_string3 = Hello#world ;Non_alpha_string4 = Hello%world ;Non_alpha_string5 = Hello&world ;Non_alpha_string6 = Hello*world ;Non_alpha_string7 = Hello+world ;Non_alpha_string8 = Hello-world ;Non_alpha_string9 = Hello'world ;Non_alpha_string10 = Hello:world ;Non_alpha_string11 = Hello;world ;Non_alpha_string12 = Helloworld ;Non_alpha_string14 = Hello>world ;Non_alpha_string15 = Hello?world ;Non_alpha_string16 = Hello\world ;Non_alpha_string17 = Hello^world ;Non_alpha_string18 = Hello_world ;Non_alpha_string19 = Hello|world ;Non_alpha_string20 = Hello~world ;Non_alpha_string21 = Hello`world ;Non_alpha_string22 = Hello(world) [Non-alpha numerics in strings -with quotes] Non_alpha_string1_quotes = "Hello@world" Non_alpha_string2_quotes = "Hello!world" Non_alpha_string3_quotes = "Hello#world" Non_alpha_string4_quotes = "Hello&world" Non_alpha_string5_quotes = "Hello*world" Non_alpha_string6_quotes = "Hello+world" Non_alpha_string7_quotes = "Hello-world" Non_alpha_string8_quotes = "Hello'world" Non_alpha_string9_quotes = "Hello:world" Non_alpha_string10_quotes = "Hello;world" Non_alpha_string11_quotes = "Hello --CLEAN-- --EXPECT-- *** Test parse_ini_file() function: with various keys and values given in parse.ini file *** -- ini file without process_sections optional arg -- Array ( [one] => 1 [five] => 5 [animal] => Humming bird [Language] => PHP [PHP_CONSTANT] => 1.2345678 [10] => Ten [HELLO] => HELLO [date] => [time] => [path] => /usr/local/bin [URL] => http://www.php.net [Decimal_value1] => 100 [Decimal_value2] => -100 [Decimal_value3] => -2147483647 [Decimal_value4] => 2147483647 [Decimal_value5] => -2147483648 [Decimal_value6] => 2147483648 [Octal_value] => 0100 [Hex_value1] => 0x101 [Hex_Value2] => 0x103 [Non_alpha1] => [Non_alpha2] => + [Non_alpha3] => * [Non_alpha4] => % [Non_alpha5] => <> [Non_alpha6] => @ [Non_alpha7] => # [Non_alpha8] => - [Non_alpha9] => : [Non_alpha10] => ? [Non_alpha11] => / [Non_alpha12] => \ [Non_alpha1_quotes] => ; [Non_alpha2_quotes] => + [Non_alpha3_quotes] => * [Non_alpha4_quotes] => % [Non_alpha5_quotes] => <> [Non_alpha6_quotes] => @ [Non_alpha7_quotes] => # [Non_alpha8_quotes] => ^ [Non_alpha9_quotes] => - [Non_alpha10_quotes] => = [Non_alpha11_quotes] => : [Non_alpha12_quotes] => ? [Non_alpha13_quotes] => / [Non_alpha15_quotes] => & [Non_alpha16_quotes] => {} [Non_alpha17_quotes] => | [Non_alpha18_quotes] => ~ [Non_alpha19_quotes] => ! [Non_alpha21_quotes] => () [Non_alpha_string1] => Hello@world [Non_alpha_string1_quotes] => Hello@world [Non_alpha_string2_quotes] => Hello!world [Non_alpha_string3_quotes] => Hello#world [Non_alpha_string4_quotes] => Hello&world [Non_alpha_string5_quotes] => Hello*world [Non_alpha_string6_quotes] => Hello+world [Non_alpha_string7_quotes] => Hello-world [Non_alpha_string8_quotes] => Hello'world [Non_alpha_string9_quotes] => Hello:world [Non_alpha_string10_quotes] => Hello;world [Non_alpha_string11_quotes] => Hello Hello>world [Non_alpha_string13_quotes] => Hello>world [Non_alpha_string14_quotes] => Hello?world [Non_alpha_string15_quotes] => Hello\world [Non_alpha_string16_quotes] => Hello^world [Non_alpha_string17_quotes] => Hello_world [Non_alpha_string18_quotes] => Hello|world [Non_alpha_string19_quotes] => Hello~world [Non_alpha_string20_quotes] => Hello`world [Non_alpha_string21_quotes] => Hello(world) [String1] => Hello, world Good Morning [String2] => Hello, world Good Morning [String3] => Hello, world Good Morning [String4] => [String5] => [String6] => Hello, world Good Morning [Key1] => 1 [Key2] => 1 [Key3] => 1 [Key4] => [Key5] => [Key6] => [Key7] => 1 [Key8] => 1 [Key9] => 1 [Key10] => 1 [Key11] => [Key12] => [Key13] => [Key14] => [Key15] => [Key16] => [Key17] => [Key18] => ) -- ini file with process_sections as TRUE -- Array ( [Constans] => Array ( [one] => 1 [five] => 5 [animal] => Humming bird [Language] => PHP [PHP_CONSTANT] => 1.2345678 [10] => Ten [HELLO] => HELLO ) [date] => Array ( [date] => [time] => ) [paths] => Array ( [path] => /usr/local/bin [URL] => http://www.php.net ) [Decimal] => Array ( [Decimal_value1] => 100 [Decimal_value2] => -100 [Decimal_value3] => -2147483647 [Decimal_value4] => 2147483647 [Decimal_value5] => -2147483648 [Decimal_value6] => 2147483648 ) [Octal] => Array ( [Octal_value] => 0100 ) [Hex] => Array ( [Hex_value1] => 0x101 [Hex_Value2] => 0x103 ) [Non-alphanumerics_as_values] => Array ( [Non_alpha1] => [Non_alpha2] => + [Non_alpha3] => * [Non_alpha4] => % [Non_alpha5] => <> [Non_alpha6] => @ [Non_alpha7] => # [Non_alpha8] => - [Non_alpha9] => : [Non_alpha10] => ? [Non_alpha11] => / [Non_alpha12] => \ [Non_alpha1_quotes] => ; [Non_alpha2_quotes] => + [Non_alpha3_quotes] => * [Non_alpha4_quotes] => % [Non_alpha5_quotes] => <> [Non_alpha6_quotes] => @ [Non_alpha7_quotes] => # [Non_alpha8_quotes] => ^ [Non_alpha9_quotes] => - [Non_alpha10_quotes] => = [Non_alpha11_quotes] => : [Non_alpha12_quotes] => ? [Non_alpha13_quotes] => / [Non_alpha15_quotes] => & [Non_alpha16_quotes] => {} [Non_alpha17_quotes] => | [Non_alpha18_quotes] => ~ [Non_alpha19_quotes] => ! [Non_alpha21_quotes] => () ) [Non-alpha numerics in strings] => Array ( [Non_alpha_string1] => Hello@world ) [Non-alpha numerics in strings -with quotes] => Array ( [Non_alpha_string1_quotes] => Hello@world [Non_alpha_string2_quotes] => Hello!world [Non_alpha_string3_quotes] => Hello#world [Non_alpha_string4_quotes] => Hello&world [Non_alpha_string5_quotes] => Hello*world [Non_alpha_string6_quotes] => Hello+world [Non_alpha_string7_quotes] => Hello-world [Non_alpha_string8_quotes] => Hello'world [Non_alpha_string9_quotes] => Hello:world [Non_alpha_string10_quotes] => Hello;world [Non_alpha_string11_quotes] => Hello Hello>world [Non_alpha_string13_quotes] => Hello>world [Non_alpha_string14_quotes] => Hello?world [Non_alpha_string15_quotes] => Hello\world [Non_alpha_string16_quotes] => Hello^world [Non_alpha_string17_quotes] => Hello_world [Non_alpha_string18_quotes] => Hello|world [Non_alpha_string19_quotes] => Hello~world [Non_alpha_string20_quotes] => Hello`world [Non_alpha_string21_quotes] => Hello(world) ) [Newlines_in_Values] => Array ( [String1] => Hello, world Good Morning [String2] => Hello, world Good Morning [String3] => Hello, world Good Morning [String4] => [String5] => [String6] => Hello, world Good Morning ) [ReservedKeys_as_Values] => Array ( [Key1] => 1 [Key2] => 1 [Key3] => 1 [Key4] => [Key5] => [Key6] => [Key7] => 1 [Key8] => 1 [Key9] => 1 [Key10] => 1 [Key11] => [Key12] => [Key13] => [Key14] => [Key15] => [Key16] => [Key17] => [Key18] => ) [ReservedKeys_as_Keys] => Array ( ) ) *** Done **