O comportamento dessas funções é afetado pelas configurações do php.ini.
Nome | Padrão | Modificável | Changelog |
---|---|---|---|
assert.active | "1" | PHP_INI_ALL | |
assert.bail | "0" | PHP_INI_ALL | |
assert.warning | "1" | PHP_INI_ALL | |
assert.callback | NULL | PHP_INI_ALL | |
assert.quiet_eval | "0" | PHP_INI_ALL | Removido desde o PHP 8.0.0 |
assert.exception | "1" | PHP_INI_ALL | Anteriormente ao PHP 8.0.0 o padrão era "0" |
enable_dl | "1" | PHP_INI_SYSTEM | Este recurso obsoleto certamente será removido no futuro. |
max_execution_time | "30" | PHP_INI_ALL | |
max_input_time | "-1" | PHP_INI_PERDIR | |
max_input_nesting_level | "64" | PHP_INI_PERDIR | |
max_input_vars | 1000 | PHP_INI_PERDIR | |
zend.enable_gc | "1" | PHP_INI_ALL |
Aqui está uma breve explicação das diretivas de configuração.
assert.active
bool
Ativa a avaliação de assert(). zend.assertions deve ser utilizado para controlar o comportamento de assert().
assert.bail
bool
Termina a execução de scripts se uma asserção falharem.
assert.warning
bool
Emite um warning para cada falha de assert.
assert.callback
string
Função a chamar em caso de asserts falharem.
assert.quiet_eval
bool
Este recurso foi REMOVIDO a partir do PHP 8.0.0.
Utilize a configuração atual de error_reporting() durante a avaliação de expressões assert. Se ativo então nenhum erro é mostrado (padrão é error_reporting(0)) nas avaliações. Se desativa erros são mostrados de acordo com as configurações de error_reporting()
assert.exception
bool
Lança uma exceção AssertionError no caso de um assert falhar.
enable_dl
bool
Esta diretiva permite ativar ou desativar o carregamento dinâmico de extensões do PHP com dl() .
A razão principal para desligar o carregamento dinâmico é segurança. Com carregamento dinâmico é possível ignorar todas as restrições de open_basedir. O padrão é permitir carregamento dinâmico.
max_execution_time
int
Isso configura o tempo máximo, em segundos, que um script é permitido
executar antes de ser terminado. Isso ajuda a prevenir que scripts
mal escritos de lotar os servidores. O padrão
é de 30
segundos. Quando rodando o PHP
a partir da linha de
comando o padrão é zero 0
.
O tempo máximo de execução não é afetado por chamadas de sistema, operações em streams, etc. Veja a documentação da função set_time_limit() para mais detalhes.
Seu servidor web pode ter outras configurações de timeout que também
interrompam a execução do PHP. Apache possui uma diretiva
Timeout
e o IIS tem uma função de timeout CGI.
Ambos com padrão de 300 segundos. Veja a documentação do servidor web
para mais detalhes.
max_input_time
int
Configura o tempo máximo, em segundos, que um script é permitido dispensar
interpretando dados de entrada, como GET e POST. O cronômetro começa no
momento que o PHP é chamado pelo servidor e termina quando a execução começa.
A configuração padrão é -1
, o que significa que o valor de
max_execution_time
será usado. Defina como 0
para permitir tempo ilimitado.
max_input_nesting_level
int
Configura a profundidade máxima de níveis das variáveis de entrada ( $_GET, $_POST).
max_input_vars
int
Configura quantas variáveis de
entrada serão aceitas, com o limte aplicado a cada super global
$_GET, $_POST e $_COOKIE separadamente). O uso dessa diretiva
mitiga a possibilidade de ataques de negação de serviço que utilizam colisões de hash.
Se houver mais variáveis do que o especificado nessa diretiva
um E_WARNING
é lançado, e variáveis de
entrada adicionais são ignorados.
zend.enable_gc
bool
Ativa ou desativa o coletor de refefências circulares.