Função parse_ini_file

A função parse_ini_file recebe o caminho para o arquivo INI como primeiro parâmetro, bem como dois parâmetros opcionais: o segundo parâmetro determina se as seções devem ser processadas, e o terceiro - o modo de varredura do arquivo.

Sintaxe

phpparse_ini_file(
  string $filename,
  bool $process_sections = false,
  int $scanner_mode = INI_SCANNER_NORMAL
);

Exemplo

Vamos criar um arquivo config.ini com o seguinte conteúdo:

php; config.ini
database = mysql
host = localhost
user = root
password = 12345

Agora vamos lê-lo:

php<?php
  $res = parse_ini_file('config.ini');
  print_r($res);
?>

Resultado da execução do código:

php[
  'database' => 'mysql',
  'host' => 'localhost',
  'user' => 'root',
  'password' => '12345'
]

Exemplo

Agora vamos adicionar seções ao nosso arquivo INI:

php; config.ini
[database]
type = mysql
host = localhost

[credentials]
user = root
password = 12345

Vamos ler o arquivo com processamento de seções:

php<?php
  $res = parse_ini_file('config.ini', true);
  print_r($res);
?>

Resultado da execução do código:

php[
  'database' => [
    'type' => 'mysql',
    'host' => 'localhost'
  ],
  'credentials' => [
    'user' => 'root',
    'password' => '12345'
  ]
]

Exemplo

Vamos demonstrar o funcionamento com INI_SCANNER_TYPED:

php; config.ini
debug = true
port = 3306
timeout = 3.5

Vamos ler o arquivo com tipagem de valores:

php<?php
  $res = parse_ini_file('config.ini', false, INI_SCANNER_TYPED);
  print_r($res);
?>

Resultado da execução do código:

php[
  'debug' => true,
  'port' => 3306,
  'timeout' => 3.5
]

Veja também

  • a função file_get_contents,
    que lê um arquivo para uma string
  • a função file,
    que lê um arquivo para um array