diff --git a/appendices/migration85/incompatible.xml b/appendices/migration85/incompatible.xml index f02649e99..1d0cbe823 100644 --- a/appendices/migration85/incompatible.xml +++ b/appendices/migration85/incompatible.xml @@ -1,4 +1,4 @@ - + Alterações Incompatíveis com Versões Anteriores @@ -332,9 +332,9 @@ Tentar chamar PDOStatement::setFetchMode durante - uma chamada para PDO::fetch, - PDO::fetchObject, - PDO::fetchAll, por exemplo, usando truques como + uma chamada para PDOStatement::fetch, + PDOStatement::fetchObject, + PDOStatement::fetchAll, por exemplo, usando truques como passar o objeto de instrução como um argumento do construtor ao buscar em um objeto, agora lançará um Error. @@ -357,7 +357,7 @@ Agora, uma exceção ValueError é lançada se PDO::FETCH_INTO for usada como modo de busca em - PDO::fetchAll, + PDOStatement::fetchAll, similar a PDO::FETCH_LAZY. diff --git a/appendices/transports.xml b/appendices/transports.xml index 2a7b2cf9a..729695356 100644 --- a/appendices/transports.xml +++ b/appendices/transports.xml @@ -1,5 +1,5 @@ - + Lista de Transportes via Soquete Suportados @@ -22,6 +22,13 @@ ssl://, tls://, sslv2:// & sslv3://. + + + Os transportes sslv2:// e sslv3:// + são obsoletos e não devem ser usados. Eles estão documentados apenas + para compatibilidade com versões anteriores. + + @@ -38,8 +45,6 @@ tcp://www.example.com udp://www.example.com ssl://www.example.com - sslv2://www.example.com - sslv3://www.example.com tls://www.example.com @@ -78,11 +83,18 @@ - ssl:// tentará negociar uma conexão SSL V2 - ou SSL V3, dependendo das capacidades e preferências do - host remoto. sslv2:// e - sslv3:// selecionará o protocolo de maneira - explícita. + ssl:// tentará negociar uma conexão SSL/TLS segura + dependendo das capacidades e preferências do + host remoto e do cliente. Os protocolos reais que podem ser usados são + determinados pela configuração OpenSSL e pelas opções fornecidas + através da função stream_context_create, tal como + ssl.crypto_method. + + + + Os protocolos SSLv2 e SSLv3 são obsoletos e inseguros. O uso deles é + fortemente desencorajado e eles não estão mais habilitados por padrão nas + versões modernas do PHP e do OpenSSL. diff --git a/features/commandline.xml b/features/commandline.xml index 44c2c2280..58210dfa2 100644 --- a/features/commandline.xml +++ b/features/commandline.xml @@ -1,5 +1,5 @@ - + Usando PHP a partir da linha de comando Uso da linha de Comando @@ -1755,6 +1755,13 @@ php > Este recurso não é suportado no Windows. + + + Para informações sobre o uso e as opções do PHP em linha de comando, execute + php --help ou man php. Nem todas + as opções se aplicam quando o PHP está sendo executado como servidor web. + + Este recurso experimental não diff --git a/features/http-auth.xml b/features/http-auth.xml index 3a3346d4d..ee08c1222 100644 --- a/features/http-auth.xml +++ b/features/http-auth.xml @@ -1,5 +1,5 @@ - + Autenticação HTTP com PHP @@ -29,8 +29,8 @@ - Nota sobre compatibilidade + Compatibilidade Por favor, seja cauteloso ao codificar as linhas do cabeçalho HTTP. Para garantir máxima compatibilidade com todos os clientes, a palavra-chave "Basic" deve ser escrita com um "B" maiúsculo, a string realm deve ser envolvida por aspas duplas (nunca por aspas simples), e apenas um espaço deve preceder o código 401 na linha do cabeçalho - HTTP/1.0 401. Parâmetros de autenticação precisam ser separados por + HTTP/1.1 401. Parâmetros de autenticação precisam ser separados por vírgula. @@ -63,16 +63,8 @@ if (!isset($_SERVER['PHP_AUTH_USER'])) { o usuário em um arquivo dbm. - - Cuidado com navegadores Internet Explorer bugados por aí. Eles - parecem muito minuciosos sobre a ordem dos cabeçalhos. Enviar - o cabeçalho WWW-Authenticate antes do - cabeçalho HTTP/1.0 401 parece resolver isso - por enquanto. - - - Nota de configuração + Configuração do Apache O PHP usa uma diretiva chamada AuthType para determinar se a autenticação externa está em efeito. @@ -84,68 +76,34 @@ if (!isset($_SERVER['PHP_AUTH_USER'])) { controle uma URL não autenticada roube senhas de URLs autenticadas no mesmo servidor. - - Tanto o Netscape Navigator quanto o Internet Explorer apagarão o cache de - autenticação da janela local do navegador para o realm após receber uma - resposta 401 do servidor. Isso pode efetivamente "deslogar" um usuário, - forçando o mesmo a re-entrar seu nome de usuário e senha. Algumas pessoas - usam isso para delimitar o tempo de um login, ou prover um botão de "log-out". - - - - Exemplo de Autenticação HTTP forçando um novo nome/senha - -Bem-vindo: " . htmlspecialchars($_SERVER['PHP_AUTH_USER']) . "
"; - echo "Antigo: " . htmlspecialchars($_REQUEST['OldAuth']); - echo "
\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "

\n"; -} -?> -]]> -
-
-
- - Este comportamento não é requerido pelo padrão de autenticação HTTP Basic, - então nunca se deve depender dele. Testes com - Lynx tem mostrado que Lynx não apaga - as credenciais de autenticação com uma resposta 401 do servidor, assim, ao pressionar "Voltar" - e então "Ir" novamente abrirá o recurso contanto que os requerimento de credenciais - não tenha mudado. Contudo, o usuário pode pressionar a tecla - '_' para apagar suas informações de autenticação. - - - Para fazer com que a autenticação HTTP funcione utilizando um servidor IIS com a versão CGI - do PHP é necessário editar a configuração "Directory Security" do IIS. - Clique em "Edit" e marque somente - "Anonymous Access", - deixe todos os outros campos desmarcados. - - Nota sobre IIS: + Comportamento do navegador - Para que a autenticação HTTP funcione com IIS, a diretiva do PHP - cgi.rfc2616_headers deve - ser definida como 0 (o valor default). + A autenticação básica HTTP é realmente básica e não foi projetada para suportar + logouts. Como o HTTP é um protocolo sem estado, a maioria dos navegadores armazena em cache as + credenciais fornecidas assim que um código de status 2xx é detectado, + e as envia em todas as requisições, até que o navegador seja fechado. Não há + uma maneira definida para um servidor solicitar uma nova solicitação de credenciais. + + Ao longo dos anos, várias soluções alternativas para isso se espalharam como conselhos na internet, + mas todas dependem de como diferentes navegadores optaram por lidar com casos extremos indefinidos + (ou mesmo violações do padrão HTTP). É melhor evitar essas + soluções alternativas e não usar a autenticação básica para nada sério. + + Configuração do IIS + + Para que a autenticação HTTP funcione no servidor IIS com a versão CGI do + PHP, a diretiva php.ini cgi.rfc2616_headers + deve ser definida como 0 (o valor padrão) e a configuração do IIS + em "Directory Security" (ou "Segurança do Diretório" / "Autenticação") deve ser editada. + Clique em "Edit" (ou "Editar") e marque apenas "Anonymous Access" (ou "Acesso Anônimo"), + deixando todos os outros campos desmarcados. + +
+ getimagesize @@ -185,6 +185,10 @@ if ($size && $fp) { getimagesize gerará um erro de nível E_NOTICE.
+ + A partir do PHP 8.0.0, um ValueError é lançado + se filename estiver vazio. + @@ -207,6 +211,14 @@ if ($size && $fp) { e bits e channels não eram relatados de forma alguma. + + 8.0.0 + + Um ValueError agora é lançado se + filename estiver vazio; anteriormente, um + E_WARNING era emitido e a função retornava &false;. + + 7.1.0 diff --git a/reference/intl/grapheme/grapheme-str-split.xml b/reference/intl/grapheme/grapheme-str-split.xml index 2d2aac02f..f78372144 100644 --- a/reference/intl/grapheme/grapheme-str-split.xml +++ b/reference/intl/grapheme/grapheme-str-split.xml @@ -1,5 +1,5 @@ - + grapheme_str_split @@ -60,23 +60,6 @@ - - &reftitle.changelog; - - - - - &Version; - &Description; - - - - &intl.changelog.grapheme.locale; - - - - - &reftitle.seealso; diff --git a/reference/intl/intlchar.xml b/reference/intl/intlchar.xml index 19e893bf7..bdf0230c8 100644 --- a/reference/intl/intlchar.xml +++ b/reference/intl/intlchar.xml @@ -1,5 +1,5 @@ - + IntlChar @@ -10721,7 +10721,7 @@ 8.4.0 Adicionadas as constantes IntlChar::PROPERTY_IDS_UNARY_OPERATOR, IntlChar::PROPERTY_ID_COMPAT_MATH_START e - IntlChar::PROPERTY_ID_COMPAT_MATH_START. + IntlChar::PROPERTY_ID_COMPAT_MATH_CONTINUE. diff --git a/reference/json/functions/json-last-error.xml b/reference/json/functions/json-last-error.xml index 1fbeabdd2..3c03b588f 100644 --- a/reference/json/functions/json-last-error.xml +++ b/reference/json/functions/json-last-error.xml @@ -1,5 +1,5 @@ - + json_last_error @@ -100,6 +100,11 @@ Caracteres UTF-16 malformados, possivelmente codificados incorretamente + + JSON_ERROR_NON_BACKED_ENUM + Valor contém uma enumeração não apoiada que não pode ser serializada. Disponível a partir do PHP 8.1.0. + + diff --git a/reference/math/functions/fmod.xml b/reference/math/functions/fmod.xml index 7a1e234e9..266c854aa 100644 --- a/reference/math/functions/fmod.xml +++ b/reference/math/functions/fmod.xml @@ -1,5 +1,5 @@ - + fmod @@ -50,7 +50,8 @@ &reftitle.returnvalues; O resto em ponto flutuante de - num1/num2 + num1/num2. + NAN (float) se o segundo argumento for 0. diff --git a/reference/random/random/randomizer/getfloat.xml b/reference/random/random/randomizer/getfloat.xml index 8e553ee76..586987ff8 100644 --- a/reference/random/random/randomizer/getfloat.xml +++ b/reference/random/random/randomizer/getfloat.xml @@ -1,4 +1,4 @@ - + Random\Randomizer::getFloat @@ -341,6 +341,15 @@ Lat: +69.244304 Lng: -53.548951 para obter as propriedades comportamentais desejadas. + + + O underflow é intencionalmente deixado sem tratamento no algoritmo de seção γ. + Isso pode resultar em valores incorretos sendo retornados para intervalos com + limites na faixa subnormal de números de ponto flutuante, ou seja, + para limites com um valor absoluto menor que aproximadamente + 2-1020 (cerca de 8,9e-308). + + diff --git a/reference/soap/soapfault.xml b/reference/soap/soapfault.xml index f5f8dc3e5..6af742bf8 100644 --- a/reference/soap/soapfault.xml +++ b/reference/soap/soapfault.xml @@ -1,5 +1,5 @@ - + A classe SoapFault @@ -153,7 +153,7 @@ - headerfault + lang Atributo xml:lang do texto de motivo do SOAP 1.2. diff --git a/reference/stream/functions/stream-filter-append.xml b/reference/stream/functions/stream-filter-append.xml index a8e7bde9a..252c9bea0 100644 --- a/reference/stream/functions/stream-filter-append.xml +++ b/reference/stream/functions/stream-filter-append.xml @@ -1,5 +1,5 @@ - + stream_filter_append @@ -10,12 +10,12 @@ resourcestream_filter_append resourcestream - stringfiltername - intread_write + stringfilter_name + intmode mixedparams - Adiciona o nome do filtro filtername à lista de filtros + Adiciona o nome do filtro filter_name à lista de filtros anexados ao fluxo stream. @@ -33,7 +33,7 @@ - filtername + filter_name O nome do filtro. @@ -41,7 +41,7 @@ - read_write + mode Por padrão, stream_filter_append irá @@ -54,7 +54,7 @@ As constantes STREAM_FILTER_READ, STREAM_FILTER_WRITE e/ou STREAM_FILTER_ALL também podem ser passadas ao parâmetro - read_write para substituir este comportamento. + mode para substituir este comportamento. @@ -84,7 +84,7 @@ &false; é retornado se o parâmetro stream não for um recurso ou - se o nome do filtro filtername não puder ser localizado. + se o nome do filtro filter_name não puder ser localizado. @@ -139,7 +139,7 @@ Grfgr qr svygeb Usando filtros personalizados (do usuário) stream_filter_register deve ser chamado em primeiro lugar - de maneira a registrar o filtro de usuário desejado para o valor de filtername. + de maneira a registrar o filtro de usuário desejado para o valor de filter_name. diff --git a/reference/stream/functions/stream-filter-prepend.xml b/reference/stream/functions/stream-filter-prepend.xml index e3d0142a7..6752ab675 100644 --- a/reference/stream/functions/stream-filter-prepend.xml +++ b/reference/stream/functions/stream-filter-prepend.xml @@ -1,5 +1,5 @@ - + stream_filter_prepend @@ -10,12 +10,12 @@ resourcestream_filter_prepend resourcestream - stringfiltername - intread_write + stringfilter_name + intmode mixedparams - Adiciona o nome do filtro filtername à lista de filtros + Adiciona o nome do filtro filter_name à lista de filtros anexados ao fluxo stream. @@ -33,7 +33,7 @@ - filtername + filter_name O nome do filtro. @@ -41,7 +41,7 @@ - read_write + mode Por padrão, stream_filter_prepend irá @@ -54,7 +54,7 @@ As constantes STREAM_FILTER_READ, STREAM_FILTER_WRITE e/ou STREAM_FILTER_ALL também podem ser passadas ao parâmetro - read_write para substituir este comportamento. + mode para substituir este comportamento. Consulte a função stream_filter_append para um exemplo de uso deste parâmetro. @@ -85,7 +85,7 @@ &false; é retornado se o parâmetro stream não for um recurso ou - se o nome do filtro filtername não puder ser localizado. + se o nome do filtro filter_name não puder ser localizado. @@ -95,7 +95,7 @@ Usando filtros personalizados (do usuário) stream_filter_register deve ser chamado em primeiro lugar - de maneira a registrar o filtro de usuário desejado para o valor de filtername. + de maneira a registrar o filtro de usuário desejado para o valor de filter_name. diff --git a/reference/var/functions/settype.xml b/reference/var/functions/settype.xml index 47d911203..27b0fa89d 100644 --- a/reference/var/functions/settype.xml +++ b/reference/var/functions/settype.xml @@ -1,5 +1,5 @@ - + settype @@ -87,6 +87,41 @@ + + &reftitle.errors; + + Lança um ValueError se o valor de + type não for um tipo válido, a partir do PHP 8.0.0. + Antes do PHP 8.0.0, um E_WARNING era emitido e + a função retornava &false;. + + + + + &reftitle.changelog; + + + + + &Version; + &Description; + + + + + 8.0.0 + + Agora lança um ValueError quando um tipo + inválido é passado ao parâmetro type. Anteriormente, um + E_WARNING era emitido e a função retornava + &false;. + + + + + + + &reftitle.examples;