'PHP 8.3 é uma atualização importante da linguagem PHP. Ela contém muitos recursos novos, como tipagem explícita de constantes de classe, clonagem profunda de propriedades somente leitura e adições à funcionalidade de aleatoriedade. Como sempre, também inclui melhorias de desempenho, correções de bugs e limpeza geral.',
'documentation' => 'Doc',
'main_title' => 'Lançado!',
'main_subtitle' => 'PHP 8.3 é uma atualização importante da linguagem PHP.
Ela contém muitos recursos novos, como tipagem explícita de constantes de classe, clonagem profunda de propriedades somente leitura e adições à funcionalidade de aleatoriedade. Como sempre, também inclui melhorias de desempenho, correções de bugs e limpeza geral.',
'upgrade_now' => 'Atualize para PHP 8.3 agora!',
'readonly_title' => 'Clonagem profunda de propriedades somente leitura',
'readonly_description' => 'Propriedades readonly
agora podem ser modificadas uma vez dentro do método mágico __clone
para permitir a clonagem profunda de propriedades somente leitura.',
'json_validate_title' => 'Nova função json_validate()
',
'json_validate_description' => 'json_validate()
permite verificar se uma string é sintaticamente válida em JSON, sendo mais eficiente do que json_decode()
.',
'typed_class_constants_title' => 'Constantes de classe tipadas',
'override_title' => 'Novo atributo #[\Override]
',
'override_description' => 'Ao adicionar o atributo #[\Override]
a um método, o PHP garantirá que um método com o mesmo nome exista em uma classe pai ou em uma interface implementada. Adicionar o atributo torna claro que a sobreposição de um método pai é intencional e simplifica a refatoração, pois a remoção de um método pai sobreposto será detectada.',
'randomizer_getbytesfromstring_title' => 'Novo método Randomizer::getBytesFromString()
',
'randomizer_getbytesfromstring_description' => 'A Extensão Random que foi adicionada no PHP 8.2 foi ampliada com um novo método para gerar strings aleatórias consistindo apenas de bytes específicos. Este método permite que o desenvolvedor gere facilmente identificadores aleatórios, como nomes de domínio e strings numéricas de comprimento arbitrário.',
'randomizer_getfloat_nextfloat_title' => 'Novos métodos Randomizer::getFloat()
e Randomizer::nextFloat()
',
'randomizer_getfloat_nextfloat_description' => '
Devido à precisão limitada e ao arredondamento implícito de números de ponto flutuante, gerar um float imparcial dentro de um intervalo específico não é trivial, e as soluções comumente usadas no nível do usuário podem gerar resultados tendenciosos ou números fora do intervalo solicitado.
O Randomizer também foi ampliado com dois métodos para gerar floats de maneira imparcial. O método Randomizer::getFloat()
utiliza o algoritmo da seção γ que foi publicado em Drawing Random Floating-Point Numbers from an Interval. Frédéric Goualard, ACM Trans. Model. Comput. Simul., 32:3, 2022.
O linter da linha de comando agora aceita vários nomes de arquivos para lint
', 'new_classes_title' => 'Novas classes, interfaces e funções', 'new_dom' => 'Novos métodosDOMElement::getAttributeNames()
, DOMElement::insertAdjacentElement()
, DOMElement::insertAdjacentText()
, DOMElement::toggleAttribute()
, DOMNode::contains()
, DOMNode::getRootNode()
, DOMNode::isEqualNode()
, DOMNameSpaceNode::contains()
e DOMParentNode::replaceChildren()
.',
'new_intl' => 'Novos métodos IntlCalendar::setDate()
, IntlCalendar::setDateTime()
, IntlGregorianCalendar::createFromDate()
e IntlGregorianCalendar::createFromDateTime()
.',
'new_ldap' => 'Novas funções ldap_connect_wallet()
e ldap_exop_sync()
.',
'new_mb_str_pad' => 'Nova função mb_str_pad()
.',
'new_posix' => 'Novas funções posix_sysconf()
, posix_pathconf()
, posix_fpathconf()
e posix_eaccess()
.',
'new_reflection' => 'Novo método ReflectionMethod::createFromMethodName()
.',
'new_socket' => 'Nova função socket_atmark()
.',
'new_str' => 'Nova função str_increment()
, str_decrement()
e stream_context_set_options()
.',
'new_ziparchive' => 'Novo método ZipArchive::getArchiveFlag()
.',
'new_openssl_ec' => 'Suporte para geração de chaves EC com parâmetros EC personalizados na extensão OpenSSL.',
'new_ini' => 'Nova configuração INI zend.max_allowed_stack_size
para definir o tamanho máximo permitido da pilha.',
'ini_fallback' => 'php.ini agora suporta sintaxe de valor substituto/padrão.',
'anonymous_readonly' => 'Classes anônimas agora podem ser somente leitura.',
'bc_title' => 'Alterações obsoletas e incompatibilidades com versões anteriores',
'bc_datetime' => 'Exceções de Date/Time mais apropriadas.',
'bc_arrays' => 'Atribuir um índice negativo n
a um array vazio agora garantirá que o próximo índice seja n + 1
em vez de 0
.',
'bc_range' => 'Alterações na função range()
.',
'bc_traits' => 'Alterações na redeclaração de propriedades estáticas em traits.',
'bc_umultipledecimalseparators' => 'A constante U_MULTIPLE_DECIMAL_SEPERATORS
foi obsoleta em favor de U_MULTIPLE_DECIMAL_SEPARATORS
.',
'bc_mtrand' => 'A variante MT_RAND_PHP
do Mt19937 está obsoleta.',
'bc_reflection' => 'O tipo de retorno de ReflectionClass::getStaticProperties()
não será mais nulo.',
'bc_ini' => 'As configurações INI assert.active
, assert.bail
, assert.callback
, assert.exception
e assert.warning
foram obsoletas.',
'bc_standard' => 'Chamar get_class()
e get_parent_class()
sem argumentos está obsoleto.',
'bc_sqlite3' => 'SQLite3: modo de erro padrão definido como exceções.',
'footer_title' => 'Melhorias de desempenho, sintaxe aprimorada e maior segurança de tipos.',
'footer_description' => 'Para downloads do código-fonte do PHP 8.3, visite a página de downloads. Binários para Windows podem ser encontrados no site PHP for Windows. A lista de alterações está registrada no ChangeLog.
O guia de migração está disponível no Manual do PHP. Consulte-o para obter uma lista detalhada de novos recursos e alterações incompatíveis com versões anteriores.
', ];