Apenas os novos métodos devem ser implementados, se nenhum suporte para PHP anterior à versão 7.4 for fornecido, ou ambos devem ser implementados.
null para parâmetros não não-anuláveis de funções embutidasTipos escalares para funções embutidas são anuláveis por padrão. Esse comportamento está descontinuado para alinhar com o comportamento de funções definidas pelo usuário, onde tipos escalares precisam ser explicitamente marcados como anuláveis.
<?php
var_dump(str_contains("foobar", null));
// Deprecated: Passing null to parameter #2 ($needle) of type string
//             is deprecated
?>A conversão implícita de float para int que leva a uma perda de precisão agora está descontinuada. Isso afeta chaves de array, Declarações do tipo int no modo coercitivo, e operadores trabalhando em ints.
<?php
$a = [];
$a[15.5]; // descontinuado, pois o valor da chave perde o componente de 0.5
$a[15.0]; // ok, pois 15.0 == 15
?>Chamar um método static ou acessar uma propriedade static diretamente em um trait foi descontinuado. Métodos estáticos e propriedades estáticas somente devem ser acessados em uma classe usando o trait.
Retornar um valor que não é um array da __sleep() agora gera um diagnóstico.
<?php
function &test(): void {}
?>E_NOTICE quando chamada:
    Only variable references should be returned by reference.
   
  false
    Autovivificação é o processo de criar um novo array ao
    acrescentar um valor.
    Autovivificação é proibida a partir de valores escalares, false, no entanto
    era uma exceção. Isso está descontinuado agora.
    
<?php
$arr = false;
$arr[] = 2;   // descontinuado
?>Nota:
Autovivificação a partir de
nulle valores não indefinidos ainda é permitida:<?php
// A partir de indefinido
$arr[] = 'some value';
$arr['doesNotExist'][] = 2;
// A partir de null
$arr = null;
$arr[] = 2;
?>
    Passar um argumento não-string está descontinuado.
    No futuro, o argumento será interpretado como uma string em vez
    de um codepoint ASCII.
    Dependendo do comportamento pretendido, o argumento deve ser
    convertido para string ou uma chamada explícita para
    chr() deve ser feita.
    Todas as funções ctype_*() são afetadas.
   
date_sunrise() e date_sunset() foram descontinuadas em favor de date_sun_info().
strptime() foi descontinuada. Use date_parse_from_format() em vez dela (para análise independente de localidade), ou IntlDateFormatter::parse() (para análise dependente de localidade).
strftime() e gmstrftime() foram descontinuadas. Em vez delas, use date() (para formatação independente de localidade), ou IntlDateFormatter::format() (para formatação dependente de localidade).
   Os filtros FILTER_SANITIZE_STRING e
   FILTER_SANITIZE_STRIPPED estão descontinuados.
  
A diretiva INI filter.default está descontinuada.
   O num_points da imagepolygon(),
   imageopenpolygon() e imagefilledpolygon()
   foi descontinuado.
  
   A mhash(),
   mhash_keygen_s2k(),
   mhash_count(),
   mhash_get_block_size(),
   e mhash_get_hash_name() foram descontinuadas.
   Use as funções hash_*() em vez delas.
  
   A constante NIL foi descontinuada.
   Use 0 em vez dela.
  
   Chamar IntlCalendar::roll() com um
   argumento bool está descontinuado.
   Use 1 e -1 em vez de
   true e false respectivamente.
  
Chamar mb_check_encoding() sem argumentos está descontinuado.
   A propriedade mysqli_driver::$driver_version
   foi descontinuada.
   Ela era sem sentido e desatualizada, use PHP_VERSION_ID
   em vez dela.
  
   Chamar mysqli::get_client_info() ou
   mysqli_get_client_info() com o
   argumento mysqli foi descontinuado.
   Chame mysqli_get_client_info() sem argumentos
   para obter a informação de versão da biblioteca cliente.
  
O método mysqli::init() foi descontinuado. Substitua chamadas para parent::init() por parent::__construct().
A diretiva INI oci8.old_oci_close_semantics está descontinuada.
odbc_result_all() foi descontinuada.
   O modo de busca PDO::FETCH_SERIALIZE foi descontinuado.
  
   Não passar o argumento de conexão para todas as funções pgsql_*()
   foi descontinuado.
  
   A opção ssl_method do
   SoapClient::__construct() foi descontinuada
   em favor das opções de contexto de fluxo SSL.
   
  
Chamar key(), current(), next(), prev(), reset(), ou end() em objects está descontinuado. Primeiro converta o object para um array utilizando get_mangled_object_vars(), ou utilize os métodos fornecidos por uma classe que implemente Iterator, como por exemplo ArrayIterator.
   A diretiva INI auto_detect_line_endings
   está descontinuada.
   Se necessário, em vez dela, lide com quebras de linha "\r" manualmente.
  
   As constantes FILE_BINARY e
   FILE_TEXT foram descontinuadas.
   Elas nunca tiveram nenhum efeito.
  
