php-src/ext/standard/tests/general_functions/parse_ini_basic.phpt
Jani Taskinen 09b6f37f20 MFH:
- Added ".htaccess" style user-defined php.ini files support for
  CGI/FastCGI.
- Added support for special [PATH=/opt/httpd/www.example.com/] sections
  in php.ini. All directives set in these sections will not be able to be
  overridden in user-defined ini-files or during runtime in the specified
  path.

- Improved php.ini handling:
  . Added better error reporting for syntax errors in php.ini files
  . Allowed "ini-variables" to be used almost everywhere ini php.ini files
  . Allowed using alphanumeric/variable indexes in "array" ini options
  . Fixed get_cfg_var() to be able to return "array" ini options

- Fixed bug #27372 (parse error loading browscap.ini at apache startup)
- Fixed bug #42069 (parse_ini_file() allows using some non-alpha numeric
  characters)
2007-09-28 02:05:10 +00:00

240 lines
4.5 KiB
PHP

--TEST--
parse_ini_file() tests
--ENV--
basicval=FUBAR_VARIABLE
basicqval=FUBAR_QUOTES_VARIABLE
--FILE--
<?php
$ini_file = dirname(__FILE__)."/parse_ini_basic.data";
var_dump(parse_ini_file($ini_file, 1));
echo "Done.\n";
?>
--EXPECTF--
array(22) {
["basic"]=>
array(14) {
["basicval"]=>
string(3) "bar"
["longval"]=>
string(5) "12345"
["with.dot"]=>
string(7) "fooobar"
["boolon"]=>
string(1) "1"
["booltrue"]=>
string(1) "1"
["boolyes"]=>
string(1) "1"
["booloff"]=>
string(0) ""
["boolfalse"]=>
string(0) ""
["boolnone"]=>
string(0) ""
["boolno"]=>
string(0) ""
["string"]=>
string(34) "asdadfsdjkslkj ¡@£$$ { }[ ]/%#¤"
["sqstring"]=>
string(14) "adsasdadasdasd"
["dqstring"]=>
string(51) "asdadfsdjkslkj ¡@£$$ { } !^~|¥¥{[()/)&/% ¤ # #"
["php_constant"]=>
string(4) "6143"
}
["basic with whitespace"]=>
array(13) {
["basicval"]=>
string(3) "bar"
["longval"]=>
string(5) "12345"
["with.dot"]=>
string(7) "fooobar"
["boolon"]=>
string(1) "1"
["booltrue"]=>
string(1) "1"
["boolyes"]=>
string(1) "1"
["booloff"]=>
string(0) ""
["boolfalse"]=>
string(0) ""
["boolnone"]=>
string(0) ""
["boolno"]=>
string(0) ""
["sqstring"]=>
string(14) "adsasdadasdasd"
["dqstring"]=>
string(41) "asdadfsdjkslkj ¡@£$$€¥¥{[()/)&/%#¤"
["php_constant"]=>
string(4) "6143"
}
["comments"]=>
array(1) {
["somecomment"]=>
string(15) "comment follows"
}
["variables"]=>
array(8) {
["var1"]=>
string(14) "FUBAR_VARIABLE"
["var2"]=>
string(18) "FUBAR_VARIABLE/foo"
["var3"]=>
string(18) "foo/FUBAR_VARIABLE"
["var4"]=>
string(22) "foo/FUBAR_VARIABLE/foo"
["quoted_var1"]=>
string(21) "FUBAR_QUOTES_VARIABLE"
["quoted_var2"]=>
string(25) "FUBAR_QUOTES_VARIABLE/foo"
["quoted_var3"]=>
string(25) "foo/FUBAR_QUOTES_VARIABLE"
["quoted_var4"]=>
string(29) "foo/FUBAR_QUOTES_VARIABLE/foo"
}
["offset values"]=>
array(6) {
["foo1"]=>
array(2) {
[0]=>
string(14) "basic offset 1"
[1]=>
string(14) "basic offset 2"
}
["foo2"]=>
array(1) {
[123]=>
string(11) "long offset"
}
["foo3"]=>
array(1) {
["abc"]=>
string(13) "string offset"
}
["foo4"]=>
array(4) {
[0]=>
string(15) "quoted offset 1"
[" "]=>
string(15) "quoted offset 2"
["sqfoobar"]=>
string(20) "quoted string offset"
["dqfoobar"]=>
string(20) "single quoted offset"
}
["foo6"]=>
array(4) {
["FUBAR_VARIABLE"]=>
string(8) "variable"
["FUBAR_VARIABLE/foo"]=>
string(22) "variable with string 1"
["foo/FUBAR_VARIABLE"]=>
string(22) "variable with string 2"
["foo/FUBAR_VARIABLE/foo"]=>
string(22) "variable with string 3"
}
["foo7"]=>
array(4) {
["FUBAR_QUOTES_VARIABLE"]=>
string(17) "quoted variable 1"
["FUBAR_QUOTES_VARIABLE/foo"]=>
string(17) "quoted variable 2"
["foo/FUBAR_QUOTES_VARIABLE"]=>
string(17) "quoted variable 3"
["foo/FUBAR_QUOTES_VARIABLE/foo"]=>
string(17) "quoted variable 4"
}
}
["non value"]=>
array(4) {
["novalue_option1"]=>
string(0) ""
["novalue_option2"]=>
string(0) ""
["novalue_option3"]=>
string(0) ""
["novalue_option4"]=>
array(3) {
[0]=>
string(0) ""
[1]=>
string(0) ""
[2]=>
string(0) ""
}
}
["Quoted strings and variables in sections"]=>
array(0) {
}
["FUBAR_VARIABLE"]=>
array(0) {
}
["FUBAR_VARIABLE/foo"]=>
array(0) {
}
["foo/FUBAR_VARIABLE"]=>
array(0) {
}
["foo/FUBAR_VARIABLE/foo"]=>
array(0) {
}
["FUBAR_QUOTES_VARIABLE"]=>
array(0) {
}
["FUBAR_QUOTES_VARIABLE/foo"]=>
array(0) {
}
["foo/FUBAR_QUOTES_VARIABLE"]=>
array(0) {
}
["foo/FUBAR_QUOTES_VARIABLE/foo"]=>
array(0) {
}
["PATH=FUBAR_VARIABLE/no/quotes"]=>
array(0) {
}
["PATH=FUBAR_VARIABLE/all/quoted"]=>
array(0) {
}
["01"]=>
array(2) {
["e"]=>
string(1) "e"
["f"]=>
string(1) "f"
}
["02"]=>
array(2) {
["g"]=>
string(1) "g"
["h"]=>
string(1) "h"
}
[1]=>
array(2) {
["a"]=>
string(1) "a"
["b"]=>
string(1) "b"
}
[2]=>
array(2) {
["c"]=>
string(1) "c"
["d"]=>
string(1) "d"
}
["0815"]=>
array(1) {
["bla"]=>
string(3) "bla"
}
}
Done.