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

# Como mudar as configurações

## Executando PHP como módulo do Apache

Quando usar o PHP como módulo do Apache, você pode mudar as configurações usando diretivas nos arquivos de configuração do Apache (ex.: `httpd.conf` e `.htaccess`). Você precisa de privilégios "AllowOverride Options" ou "AllowOverride All" para isso.

Com PHP 4 e PHP 5, existem várias diretivas do Apache que permitem mudar a configuração do PHP de dentro dos arquivos dos arquivos de configuração do Apache. Para uma lista de quais diretivas são `PHP_INI_ALL`, `PHP_INI_PERDIR`, or `PHP_INI_SYSTEM`, olhe no apêndice Lista de diretivas do arquivo php.ini.

> Nota: Com PHP 3, exitem diretivas do Apache que correspondem a cada configuração no arquivo `php3.ini`, exceto as que tem o nome prefixado por "php3_".

php_value `nome` `valor`

  Configura o valor da diretiva especificada. Pode ser usado apenas com diretivas do tipo `PHP_INI_ALL` e `PHP_INI_PERDIR`. Para limpar um valor configurado anteriormente, use o valor `none`.

  > Nota: Não use php_value para configurar valores booleanos. php_flag (veja abaixo) deve ser usada, ao invés.

php_flag `nome` `on|off`

  Usado para configurar diretivas de configuração booleanas. Pode ser usada apenas com diretivas do tipo `PHP_INI_ALL` e `PHP_INI_PERDIR`.

php_admin_value `nome` `valor`

  Configura o valor da diretiva especificada. Isso não pode ser usado em arquivos `.htaccess`. Qualquer tipo diretiva configurada com php_admin_value não pode ser sobrescrita por diretivas `.htaccess` ou virtualhost. Para limpar um valor configurado anteriormente, use o valor `none`.

php_admin_flag `nome` `on|off`

  Usado para configura diretiva de configuração booleana. Isso não pode ser usado em arquivos `.htaccess`. Qualquer tipo diretiva configurada com php_admin_flag não pode ser sobrescrita por diretivas `.htaccess` ou virtualhost. Para limpar um valor configurado anteriormente, use o valor `none`.

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 PHP não existem fora do PHP. Por exemplo, no arquivo `httpd.conf` você não pode usar constantes do PHP como `E_ALL` ou `E_NOTICE` para configurar a diretiva error_reporting, já que elas não terão significado algum e serão avaliadas como 0. Ao invés, use os valores de bitmask associados. Essas constantes podem ser usados no arquivo `php.ini`

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

Quando executar o PHP no Windows, os valores de configuração pode ser modificados para 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 caminhos dos diretórios. Por exemplo, valores para o diretório `c:\inetpub\wwwroot` estariam guardadas na chave `HKLM\SOFTWARE\PHP\Per Directory Values\c\inetpub\wwwroot`. As configurações para o diretório estariam ativos para qualquer script rodando desse diretório ou qualquer subdiretório dele. Os valores na 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 avaliados. Entretanto, apenas valores de configurações modificáveis no `PHP_INI_USER` podem ser definidos desta maneira, valores `PHP_INI_PERDIR` não podem.

## Outras interfaces para PHP

Independente de como você execute PHP, você pode mudar certos valore durante a execução de seus scripts através ini_set(). Veja a documentação na página ini_set() para mais informações.

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

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