PHP 8.5.0 Released!

Recursos Descontinuados

Núcleo do PHP

Alterações no manipulador de saída do usuário

Tentar gerar saída (por exemplo, com echo) dentro de um manipulador de saída do usuário foi descontinuado. O aviso de descontinuação ignorará o manipulador que gera a saída para garantir que ela seja visível; se houver manipuladores de saída aninhados, o próximo ainda será usado.

Nomes de conversão não canônicos

Nomes de conversão não canônicos (boolean), (integer), (double), e (binary) foram descontinuados, use (bool), (int), (float),e (string) respectivamente.

Encerrando instruções 'case' com ponto e vírgula

O uso de ponto e vírgula em vez de dois pontos para encerrar instruções 'case' foi descontinuado.

O operador de execução

O operador de execução como um sinônimo de shell_exec() foi descontinuado.

Retornando null de __debugInfo()

Retornar null de __debugInfo() foi descontinuado. Em vez disso, retorne um array vazio.

Diretiva INI report_memleaks

A diretiva INI report_memleaks foi descontinuada.

Redeclaração de constante

A redeclaração de constante foi descontinuada. Observe que isso já gerava aviso e continuará gerando.

Problemas de vinculação de Closure

Os seguintes problemas de vinculação de Closure, que já emitem um E_WARNING, agora estão descontinuados:

  • Vincular uma instância a um Closure estático.
  • Vincular métodos a objetos que não são instâncias da classe (ou subclasse) na qual o método está definido.
  • Desvincular $this de um método.
  • Desvincular `$this` de um Closure que usa `$this`.
  • Vincular um Closure ao escopo de uma classe interna.
  • Revincular o escopo de um Closure criado a partir de uma função ou método.

Métodos mágicos __sleep() e __wakeup()

Os métodos mágicos __sleep() e __wakeup() foram praticamente descontinuados. Os métodos mágicos __serialize() e __unserialize() devem ser usados no lugar deles, ou ao mesmo tempo se for requerida compatibilidade com o PHP 7.

Usando null como um índice de array

Usar null como um índice de array ou ao chamar array_key_exists() agora foi descontinuado. Uma string vazia deve ser usada em seu lugar.

Incrementando strings não numéricas

Incrementar strings não numéricas agora foi descontinuado. Em vez disso, a função str_increment() deve ser usada.

Diretiva INI register_argc_argv

A obtenção de $_SERVER['argc'] e $_SERVER['argv'] a partir da string de consulta para SAPIs não-CLI foi descontinuada. Configure register_argc_argv=0 e alterne para $_GET ou $_SERVER['QUERY_STRING'] para acessar as informações, após verificar se o uso é seguro.

cURL

A função curl_close() foi descontinuada, pois os objetos CurlHandle são liberados automaticamente.

A função curl_share_close() foi descontinuada, pois os objetos CurlShareHandle são liberados automaticamente.

Date

As constantes DATE_RFC7231 e DateTimeInterface::RFC7231 foram descontinuadas. Isso ocorre porque o fuso horário associado é ignorado e sempre usa GMT.

FileInfo

A função finfo_close() foi descontinuada. Os objetos finfo são liberados automaticamente.

O parâmetro $context da função finfo_buffer() foi descontinuado pois é ignorado.

GD

A função imagedestroy() foi descontinuada, pois os objetos GdImage são liberados automaticamente.

Hash

As constantes MHASH_* foram descontinuadas.

Intl

A configuração INI intl.error_level foi descontinuada. Os erros devem ser verificados manualmente ou as exceções devem ser habilitadas usando a configuração INI intl.use_exceptions.

LDAP

Chamadas e constantes específicas do Oracle Instant Client foram descontinuadas. Lista de chamadas afetadas:

Lista de constantes afetadas:
  • GSLC_SSL_NO_UATH
  • GSLC_SSL_ONEWAY_UATH
  • GSLC_SSL_TWOWAY_UATH

MySQLi

O sinônimo de função mysqli_execute() foi descontinuado. Use mysqli_stmt_execute() no lugar dela.

OpenSSL

O parâmetro $key_length da função openssl_pkey_derive() foi descontinuado. Isso ocorre porque ele é ignorado ou trunca a chave, o que pode representar uma vulnerabilidade de segurança.

PDO

O esquema DSN "uri:" foi descontinuado devido a preocupações de segurança com DSNs provenientes de URIs remotas.

Constantes específicas de drivers na classe PDO foram descontinuadas. Lista das constantes afetadas e suas substituições:

Métodos específicos de drivers na classe PDO foram descontinuados. Lista dos métodos afetados e suas substituições:

PDO_PGSQL

As constantes relacionadas aos estados de transação foram descontinuadas, pois esse recurso não está disponível no PDO:

  • PDO::PGSQL_TRANSACTION_IDLE
  • PDO::PGSQL_TRANSACTION_ACTIVE
  • PDO::PGSQL_TRANSACTION_INTRANS
  • PDO::PGSQL_TRANSACTION_INERROR
  • PDO::PGSQL_TRANSACTION_UNKNOWN

Reflection

Os métodos setAccessible() de vários objetos Reflection foram descontinuados, pois não têm mais efeito.

Chamar ReflectionClass::getConstant() para constantes que não existem foi descontinuado.

Chamar ReflectionProperty::getDefaultValue() para propriedades sem valores padrão foi descontinuado.

SPL

O processo de cancelar o registro de todos os autocarregadores passando a função spl_autoload_call() como argumento de retorno para spl_autoload_unregister() foi descontinuado. Em vez disso, se necessário, deve-se iterar sobre o valor de retorno de spl_autoload_functions() e chamar spl_autoload_unregister() em cada valor.

Os métodos SplObjectStorage::contains(), SplObjectStorage::attach() e SplObjectStorage::detach() foram descontinuados em favor de SplObjectStorage::offsetExists(), SplObjectStorage::offsetSet() e SplObjectStorage::offsetUnset() respectivamente.

Usar ArrayObject e ArrayIterator com objetos foi descontinuado.

Standard

A função sinônimo socket_set_timeout() foi descontinuada. Use stream_set_timeout() em seu lugar.

Passar null para readdir(), rewinddir() e closedir() para usar o último diretório aberto foi descontinuado. Em vez disso, forneça o último diretório aberto explicitamente.

Passar inteiros fora do intervalo [0, 255] para chr() agora foi descontinuado. Isso ocorre porque um byte só pode armazenar um valor dentro desse intervalo.

Passar uma string que não seja um único byte para ord() agora foi descontinuado, isso indica um bug.

A variável predefinida localmente $http_response_header foi descontinuada. Em vez disso, deve-se chamar a função http_get_last_response_headers().

XML

A função xml_parser_free() foi descontinuada, pois os objetos XMLParser são liberados automaticamente.

adicionar nota

Notas de Usuários

Não há notas de usuários para esta página.
To Top