Manual do PHP
Anterior | Capítulo 9. Configuração | Próxima

# Como modificar valores de configuração

## Executando PHP como um módulo do Apache

Quando usar o PHP como módulo do Apache, você pode também mudar os valores de configuração usando diretivas nos arquivos de configuração do Apache (Ex.: `httpd.conf` e `.htaccess`). Você precisará de privilégios do tipo "AllowOverride Options" ou "AllowOverride All" para fazê-lo.

No PHP 4 e 5, existem várias diretivas do Apache que lhe permitem mudar a configuração do PHP a partir dos arquivos de configuração do Apache. Para ver uma lista de quais diretivas são `PHP_INI_ALL`, `PHP_INI_PERDIR`, ou `PHP_INI_SYSTEM`, olhe na tabela que está na documentação da função ini_set().

> Nota: No PHP 3, existem diretivas do Apache que correspondem com cada parâmetro de configuração encontrado no arquivo `php3.ini`, exceto as que tem o nome com prefixo "php3_".

php_value name value

  Edita o valor da diretiva especificada. Pode ser usada apenas com diretivas do tipo `PHP_INI_ALL` e `PHP_INI_PERDIR`. Para limpar um valor atribuído anteriormente, use none como valor.

  > Nota: Não use php_value para editar valores booleanos. Ao invés, use php_flag (veja abaixo).

php_flag name on|off

  Usado para editar o valor de uma diretiva de configuração booleana. Pode ser usada apenas com diretivas do tipo `PHP_INI_ALL` e `PHP_INI_PERDIR`.

php_admin_value name value

  Edita o valor da diretiva especificada. Não pode ser usada em arquivos `.htaccess`. Qualquer tipo de diretiva edita com php_admin_value não pode ser sobrescrita pelo arquivo `.htaccess` ou diretivas de virtualhost. Para limpar um valor atribuído anteriormente, use none como valor.

php_admin_flag name on|off

  Usado para editar o valor de uma diretiva de configuração booleana. Não pode ser usada em arquivos `.htaccess`. Qualquer tipo de diretiva edita com php_admin_flag não pode ser sobrescrita pelo arquivo `.htaccess` ou diretivas de virtualhost.

Exemplo 9-2. Exemplo de configuração do Apache
    <IfModule mod_php5.c>
      php_value include_path ".:/usr/local/lib/php"
      php_admin_flag safe_mode on
    </IfModule>
    <IfModule mod_php4.c>
      php_value include_path ".:/usr/local/lib/php"
      php_admin_flag safe_mode on
    </IfModule>
    <IfModule mod_php3.c>
      php3_include_path ".:/usr/local/lib/php"
      php3_safe_mode on
    </IfModule>

Cuidado
Constantes do PHP não existem fora do PHP. Por exemplo, no arquivo `httpd.conf` você não pode usar constantes do PHP tais como `E_ALL` ou `E_NOTICE` para editar a diretiva error_reporting uma vez que elas não teram significado e serão avaliadas como 0. Ao invés disso, use os valoes da máscara de bits associada. Essas constantes podem ser usadas no arquivo `php.ini`.

## Mudando a configuração do PHP através do registro do Windows

Quando executar o PHP no Windows, os valores de configuração podem ser modificados em cada diretório usando o registro do Windows. Os valores de configuração são guardados na chave de registro HKLM\SOFTWARE\PHP\Per Directory Values, nas sub-chaves correspondentes aos nomes dos caminhos. Por exemplo, os valores de configuração para o diretório c:\inetpub\wwwroot seriam guardados na chave HKLM\SOFTWARE\PHP\Per Directory Values\c\inetpub\wwwroot. Os parâmetros para o diretório valeriam para qualquer script rodando nesse diretório ou qualquer subdiretório do mesmo. Os valores sob a chave devem ter o nome da diretiva de configuração do PHP e um valor string. Constantes do PHP nos valores não são interpretadas.

## Outras interfaces para o PHP

Independente de como você executar o PHP, você pode mudar certos valores em tempo de execução nos seus scripts através da função ini_set(). Veja a documentação de ini_set() para mais informações.

Se você estiver interessado em uma lista completa de parâmetros de configuração no seu sistema com os seus valores atuais, você pode executar a função phpinfo(), e revisar a página resultante. Você também pode acessar os valores de diretivas de configuração individuais em tempo de execução usando ini_get() ou get_cfg_var().

Anterior | Principal | Próxima
Configuração | Acima | Referência da Linguagem