1[basic] 2basicval = bar 3longval = 12345 4with.dot = fooobar 5boolon = on 6booltrue = true 7boolyes = yes 8booloff = off 9boolfalse = false 10boolnone = none 11boolno = no 12string = asdadfsdjkslkj ¡@£$$ { }[ ]/%#¤ 13sqstring = 'adsasdadasdasd' 14dqstring = "asdadfsdjkslkj ¡@£$$ { } !^~|¥¥{[()/)&/% ¤ # #" 15php_constant = E_WARNING 16user_constant = TEST_CONSTANT 17 18[basic with whitespace] 19basicval = bar 20longval = 12345 21with.dot = fooobar 22boolon = on 23booltrue = true 24boolyes = yes 25booloff = off 26boolfalse = false 27boolnone = none 28boolno = no 29sqstring = 'adsasdadasdasd' 30dqstring = "asdadfsdjkslkj ¡@£$$€¥¥{[()/)&/%#¤" 31php_constant = E_WARNING 32 33[comments] 34; some comment 35 ; some comment with whitespace 36somecomment = comment follows;aaa@bbb ; comment here 37; 38 39[variables] 40var1 = ${basicval} 41var2 = ${basicval}/foo 42var3 = foo/${basicval} 43var4 = foo/${basicval}/foo 44quoted_var1 = "${basicqval}" 45quoted_var2 = "${basicqval}/foo" 46quoted_var3 = "foo/${basicqval}" 47quoted_var4 = "foo/${basicqval}/foo" 48 49[offset values] 50foo1[] = "basic offset 1" 51foo1[ ] = "basic offset 2" 52foo2[123] = "long offset" 53foo3[abc] = "string offset" 54foo4[""] = "quoted offset 1" 55foo4[" "] = "quoted offset 2" 56foo4["sqfoobar"] = "quoted string offset" 57foo4['dqfoobar'] = "single quoted offset" 58foo6[${basicval}] = "variable" 59foo6[${basicval}/foo] = "variable with string 1" 60foo6[foo/${basicval}] = "variable with string 2" 61foo6[foo/${basicval}/foo] = "variable with string 3" 62foo7["${basicqval}"] = "quoted variable 1" 63foo7["${basicqval}/foo"] = "quoted variable 2" 64foo7["foo/${basicqval}"] = "quoted variable 3" 65foo7[ "foo/${basicqval}/foo" ] = "quoted variable 4" 66 67[non value] 68novalue_option1 = 69novalue_option2= 70novalue_option3 = 71novalue_option4= 72novalue_option4[] = 73novalue_option4[]= 74novalue_option4[]= 75 76["Quoted strings and variables in sections"] 77 78[${basicval}] 79[${undefinedval:-foo}] 80[${basicval}/foo] 81[foo/${basicval}] 82[foo/${basicval}/foo] 83 84["${basicqval}"] 85["${undefinedval:-foo}"] 86["${basicqval}/foo"] 87["foo/${basicqval}"] 88["foo/${basicqval}/foo"] 89 90[PATH=${basicval}/no/quotes] 91; Invalid! 92;[PATH="${basicval}/path/quoted"] 93["PATH=${basicval}/all/quoted"] 94 95; This is test for bug #29306 96[01] 97e=e 98f=f 99[02] 100g=g 101h=h 102[1] 103a=a 104b=b 105[2] 106c=c 107d=d 108[0815] 109bla=bla 110 111;Test for bug #43923 112[bug #43923] 113curly1 = { 114curly2 = "{" 115curly3 = '{' 116 117;Test for bug #44019 118[bug #44019] 119concatenation_before = TEST_CONSTANT "+some_text_after" 120concatenation_middle = "some_text_before+" TEST_CONSTANT "+some_text_after" 121concatenation_after = "some_text_before+" TEST_CONSTANT 122concatenation_nows_before = TEST_CONSTANT"+some_text_after" 123concatenation_nows_middle = "some_text_before+"TEST_CONSTANT"+some_text_after" 124concatenation_nows_after = "some_text_before+"TEST_CONSTANT 125 126;Test for bug #43915 127[bug #43915] 128ini_with-hyphen = with hyphen and underscore 129ini.with-hyphen = dot and hyphen 130ini-with.hyphen = hyphen and dot 131 132[windows paths] 133winpath1="c:\some windows\path\test\new\r\quote \" here\single ' quote\some more" 134winpath2="special case\" 135 136[characters escaping] 137; Note: single-quoted strings don't support characters escaping, and the line below 138; is single-quoted string, followed by unquoted text, followed by single-quoted '.' 139single_quoted = 'She said \'Exactly my point\'.' 140double_quoted = "She said \"Exactly my point\"." 141double_quoted_2 = "Use \\\" to escape double quote" 142double_quoted_multiline = "Lorem \"ipsum\""" 143 dolor" 144dollar_test = "\${test}" 145unescaped ="\n\r\t" 146 147[variable-fallback] 148defined1 = "Hello, ${basicval:-world}!" 149defined2 = ${basicval:-123} 150falsy = ${falsyval:-hi} 151undefined = "Hello, ${undefined_var:-world}!" 152empty = ${emptyval:-foo} 153spaces = ${undefined_var:-hi there} 154exclamation = ${hi_is_this_undefined:-"no, this is fallback!"} 155nested = ${undefined_var:-${also_undefined:-${undefined_too:-hello}}} 156hostname = localhost:${undefined_var:-8080} 157outer_quotes = "foo:${undefined_var:-bar}" 158number_value = ${undefined_var:-12345} 159true_value = ${undefined_var:-true} 160false_value = ${undefined_var:-false} 161null_value = ${undefined_var:-null} 162empty1 = ${undefined_var:-} 163empty2 = ${undefined} 164constant = ${undefined:-TEST_CONSTANT} 165INI:WITH:COLON = ${INI:WITH:COLON:-} 166NONEXISTENT:INI:WITH:COLON = ${NONEXISTENT:INI:WITH:COLON:-fallback} 167