Joseph Carrington
Joseph Carrington

Reputation: 451

PHP: reading config.ini to array with file()

My config file looks like this:

title = myTitle;
otherTitle = myOtherTitle;

when I read the file with file(), it creates this array

[0] => title = myTitle;
[1] => otherTitle = myOtherTitle;

and what I want the array to look like is

[title] => myTitle;
[otherTitle] => myOtherTitle;

Am I using the wrong approach her? Should i just read the entire config into a sting and explode it from there?

Upvotes: 3

Views: 3371

Answers (2)

Ayman Hourieh
Ayman Hourieh

Reputation: 137416

You can use the parse_ini_file function. It's available in PHP 4 and 5.

If your config file looks like this:

one = 1;
five = 5;
animal = BIRD;

The function will return the following associative array:

Array
(
    [one] => 1
    [five] => 5
    [animal] => BIRD
)

Upvotes: 9

pix0r
pix0r

Reputation: 31290

I would just loop through the file and explode each line individually. Here's a simple example, after which you'll end up with $config holding all of your data as requested.

$config = array();
$lines = file("config.ini");
foreach ($lines as $line) {
    $vals = explode('=', $line, 2);
    $config[trim($vals[0])] = trim($vals[1]);
}

Upvotes: 0

Related Questions