The manual states above:
<<<
The default is to allow dynamic loading, except when using safe mode. In safe mode, it's always impossible to use dl().
>>>
...however, on the manual page for dl(), it states:
<<<
Note: dl() is not supported in multithreaded Web servers. Use the extensions statement in your php.ini when operating under such an environment. However, the CGI and CLI build are not affected !
Note: As of PHP 5, the dl() function is deprecated in every SAPI except CLI. Use Extension Loading Directives method instead.
Note: Since PHP 6 this function is disabled in all SAPIs, except CLI, CGI and embed.
>>>
CXIX. PHP Opções e Informações
Introdução
Estas funções permitem a você obter muitas informações sobre o PHP em si, ex. Configurações em tempo de execução, extensões carregadas, versão e muito mais. Você também encontrará funções para definir opções durante a execução. A provavelmente mais conhecida função do PHP - phpinfo() - pode ser encontrada aqui.
Dependências
Nenhuma biblioteca externa é necessária para compilar esta extensão.
Instalação
Não há nenhuma instalação necessária para utilizar estas funções, elas fazem parte do núcleo do PHP.
Configurações em execução
O comportamento dessas funções podem ser modificado pelas configurações do php.ini.
Tabela 1. PHP opções e informações de configuração
| Nome | Padrão | Modificável |
|---|---|---|
| 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 |
| enable_dl | "1" | PHP_INI_SYSTEM |
| max_execution_time | "30" | PHP_INI_ALL |
| max_input_time | "60" | PHP_INI_ALL |
| magic_quotes_gpc | "1" | PHP_INI_PERDIR|PHP_INI_SYSTEM |
| magic_quotes_runtime | "0" | PHP_INI_ALL |
Breve descrição das diretivas de configuração.
- assert.active boolean
Ativa a comparação assert().
- assert.bail boolean
Termina a execução do script no caso de uma afirmação(assert) falhar.
- assert.warning boolean
Mostra um aviso PHP para cada afirmação(assert) que falhar.
- assert.callback string
Função do usuário a ser executado no caso de uma afirmação(assert) falhar.
- assert.quiet_eval boolean
Usa o que esta definido atualmente para a função error_reporting() durante a avaliação da afirmação. Se ativado, não são mostrados erros (error_reporting(0) implícito) durante a avaliação. Se desativado, os erros são mostrados de acordo com as definições de error_reporting()
- enable_dl boolean
Esta diretiva somente é realmente útil na versão do PHP como módulo do apache. Você pode mudar o carregamento dinâmico de extensões do PHP com dl() on e off para cada servidor virtual ou por diretório.
A principal razão para mudar o carregamento dinâmico para off é segurança. Com o carregamento dinâmico é possível ignorar todas as restrições de open_basedir. O padrão é permitir o carregamento dinâmico exceto quando usando o safe mode. No safe mode, é sempre impossível usar dl().
- max_execution_time integer
Isto define o limite de tempo de execução de um script antes que seja terminado pelo interpretador. Isto ajuda a prevenir que scripts mal escritos serem executados indefinidamente pelo servidor. O padrão é 30.
O limite de tempo de execução não é afetado por chamadas do sistema, funções de streams, etc. Por favor veja a função set_time_limit() para maiores detalhes.
Você não pode mudar esta definição com a função ini_set() quando estiver executando em safe mode. O único meio de contornar é desativar o safe mode ou mudar o limite de tempo no php.ini.
- max_input_time integer
Isto define o tempo máximo em segundos que é permitido ao script receber dados de entradas como POST, GET e carregamento de arquivos. A definição padrão é 60.
- magic_quotes_gpc boolean
Define o estado para as aspas mágicas para operações GPC (Get/Post/Cookie). Quando as aspas mágicas estiverem em on, todas ' (aspas simples), " (aspas duplas), \ (barras invertidas) e NULL's são escapados com uma barra invertida automaticamente.
Nota: Se a diretiva magic_quotes_sybase também estiver em ON ela irá sobrescrever completamente magic_quotes_gpc. Tendo ambas diretivas ativadas faz com que apenas as aspas simples sejam escapadas como ''. Aspas duplas, barras invertidas e NULL's irão permanecer intocados e não escapados.
Veja também get_magic_quotes_gpc().
- magic_quotes_runtime boolean
Se magic_quotes_runtime estiver ativado, a maioria das funções que retornarem dados de qualquer fonte externa incluindo banco de dados e arquivos de texto terão as aspas escapadas com uma barra invertida. Se magic_quotes_sybase também estiver em on, uma aspa simples é escapada com uma aspa simples ao invés de uma barra invertida.
Tipos Resource
Esta extensão não possui nenhum tipo resource.
Constantes pré-definidas
As constantes listadas abaixo estão sempre disponíveis como parte do núcleo do PHP.
Tabela 2. Constantes phpcredits() predefinidas
| Constante | Valor | Descrição |
|---|---|---|
| CREDITS_GROUP | 1 | Uma lista do núcleo de desenvolvedores |
| CREDITS_GENERAL | 2 | Créditos em geral: design e conceito da linguagem, autores do PHP 4.0 e do módulo SAPI. |
| CREDITS_SAPI | 4 | Uma lista dos módulos API dos servidores para o PHP, e seus autores. |
| CREDITS_MODULES | 8 | Uma lista dos módulos de extensão para o PHP, e seus autores. |
| CREDITS_DOCS | 16 | Os créditos para a equipe de documentação. |
| CREDITS_FULLPAGE | 32 | Normalmente usada em combinação com as outras opções. Indica que uma pagina HTML completa precisa ser mostrada incluindo a informação indicada pelas outras opções. |
| CREDITS_QA | 64 | Os créditos para a equipe de controle de qualidade. |
| CREDITS_ALL | -1 | Todos os créditos, equivalente a usar: CREDITS_DOCS + CREDITS_GENERAL + CREDITS_GROUP + CREDITS_MODULES + CREDITS_QA CREDITS_FULLPAGE. Gera uma pagina HTML completa com as tags apropriadas. Este é o valor padrão. |
Tabela 3. Constantes da função phpinfo()
| Constante | Valor | Descrição |
|---|---|---|
| INFO_GENERAL | 1 | A linha da configuração, localização do php.ini, data de construção, servidor web, sistema e mais. |
| INFO_CREDITS | 2 | Créditos do PHP 4. Veja também phpcredits(). |
| INFO_CONFIGURATION | 4 | Valores atuais e principais para as diretivas de configuração do PHP. Veja também ini_get(). |
| INFO_MODULES | 8 | Módulos carregados e suas respectivas configurações. |
| INFO_ENVIRONMENT | 16 | Informações das variáveis de ambiente que também estão disponíveis em $_ENV. |
| INFO_VARIABLES | 32 | Mostra todas as variáveis predefinidas a partir de EGPCS (Ambiente, GET, POST, Cookie, Server). |
| INFO_LICENSE | 64 | Informação sobre a licença do PHP. Veja também a faq sobre licença. |
| INFO_ALL | -1 | Mostra tudo acima. Este é o valor padrão. |
- Índice
- assert_options -- Define/Obtém várias opções do assert
- assert -- Confere se uma afirmação é FALSE
- dl -- Carrega uma extensão do PHP durante a execução
- extension_loaded -- Indica quando uma extensão esta carregada
- get_cfg_var -- Obtém o valor de uma opção de configuração do PHP
- get_current_user -- Obtém o nome do dono do script PHP atual
- get_defined_constants -- Retorna uma matriz associativa com os nomes de todas as constantes e seus valores
- get_extension_funcs -- Retorna uma matriz com os nomes de funções de um módulo
- get_include_path -- Obtém a opção de configuração include_path atual
- get_included_files -- Retorna uma matriz com os nomes dos arquivos incluídos ou requeridos
- get_loaded_extensions -- Retorna uma matriz com os nomes de todos os módulos compilados e carregados
- get_magic_quotes_gpc -- Obtém a configuração atual de magic quotes gpc
- get_magic_quotes_runtime -- Obtém a configuração ativa para magic_quotes_runtime
- get_required_files -- Apelido para get_included_files()
- getenv -- Obtém uma variável de ambiente
- getlastmod -- Obtém o tempo da última modificação na pagina
- getmygid -- Obtém o GID do dono do script PHP
- getmyinode -- Obtém o inode do script atual
- getmypid -- Obtém o ID do processo PHP
- getmyuid -- Obtém o UID do dono do script PHP
- getopt -- Obtém opções da lista de argumentos da linha de comando
- getrusage -- Obtém a utilização de recursos
- ini_alter -- Apelido para ini_set()
- ini_get_all -- Obtém todas as opções de configuração
- ini_get -- Obtém o valor de uma opção de configuração
- ini_restore -- Restaura o valor de uma opção de configuração
- ini_set -- Define o valor de uma opção de configuração
- main -- Marcador para main()
- memory_get_peak_usage -- Returns the peak of memory allocated by PHP
- memory_get_usage -- Retorna a quantidade de memória alocada para PHP
- php_ini_scanned_files -- Retorna uma lista dos arquivos ini interpretados a partir do diretório ini adicional
- php_logo_guid -- Obtém o guid do logo
- php_sapi_name -- Retorna o tipo de interface entre o servidor web e o PHP
- php_uname -- Retorna informação sobre o sistema operacional que o PHP foi construído
- phpcredits -- Mostra os créditos pelo PHP
- phpinfo -- Mostra muitas informações sobre o PHP
- phpversion -- Obtém a versão atual do PHP
- putenv -- Define o valor de uma variável de ambiente
- restore_include_path -- Restaura o valor da opção de configuração include_path
- set_include_path -- Define a opção de configuração include_path
- set_magic_quotes_runtime -- Define a configuração atual para magic_quotes_runtime
- set_time_limit -- Limita o tempo de execução do script
- sys_get_temp_dir -- Returns directory path used for temporary files
- version_compare -- Compares two "PHP-standardized" version number strings
- zend_logo_guid -- Retorna o guid Zend
- zend_version -- Obtém a versão da Zend engine que esta sendo executada
Note: when magic_quotes_gpc is ON, it will also slash values inside both $_SERVER['QUERY_STRING'] and $_SERVER['SCRIPT_NAME'] (and equivalents) will also be slashed.
You probably don't want to set "magic_quotes_runtime" because it affects even binary file read/write operations. This is especially problematic if you include someone else's library that depends on binary read/write. If you enable "magic_quotes_runtime", be sure to use set_magic_quotes_runtime() function call to disable it before calling someone else's library that does binary read/write.
