PHP Digest No. 133 (10 a 24 de junho de 2018)


Nova seleção com links para notícias e materiais. Na versão: PHP 7.3.0 Alpha 2, planos para o PHP 8.0, Typed Properties e outras RFCs do PHP Internals, uma porção de ferramentas úteis e muito mais.
Boa leitura!


Notícias e Lançamentos



Internos em PHP


  • [RFC]: Propriedades digitadas 2.0 - Uma proposta grande e muito detalhada de Nikita Popov e Bob Weinand para implementar propriedades digitadas. Anteriormente, houve uma tentativa de aproveitar essa oportunidade, mas a proposta não passou do limiar de 2/3 dos votos. Este documento aborda 2 problemas principais da implementação anterior: tipos de propriedades estáticas são suportados e referências a propriedades digitadas. Portanto, desta vez, há todas as chances de votar. A solicitação de pool correspondente está pronta.
    A questão da versão permanece em aberto: o PHP 7.3 está sendo considerado no momento, mas se surgirem dificuldades, ele poderá ser adiado para 7.4 (8).
    Texto oculto
    class Example { // All types with the exception of "void" and "callable" are supported public int $scalarType; protected Type $type; private ?Type $nullableType; // Types are also legal on static properties public static iterable $staticProp; // Types can also be used with the "var" notation var bool $flag; // Typed properties may have default values (more below) public string $str = "foo"; public ?string $nullableStr = null; // The type applies to all properties in one declaration public float $x, $y; // equivalent to: public float $x; public float $y; } 
  • [RFC] Descontinuar e remover constantes que não diferenciam maiúsculas de minúsculas - Usando define() você pode definir uma constante que não diferencia maiúsculas de minúsculas. É proposto remover esse recurso.
  • [RFC] Deprecie e remova a opção de continuar a segmentação - continue dentro da switch se comporta como uma break , embora esse não seja o caso em outros idiomas. Propõe-se corrigir o comportamento.
  • switch estrito - Sara Golemon, como uma idéia, sugeriu a implementação de um switch estrito:
    Texto oculto
     switch ($a) { case FOO: // Works exactly as current behavior. break; case == FOO: // Nearly identical, though we don't use the ZEND_CASE optimization. // Can probably make this equivalent to `case FOO`, but it felt like an interesting direction. break; case === FOO: // Only triggers if `$a === FOO`, no type juggling break; } 

As ferramentas




Materiais de Aprendizagem




Áudio e vídeo



Obrigado pela atenção!

Se você perceber um erro ou imprecisão - informe-me no PM .
Perguntas e sugestões escreva para o correio ou twitter .

Enviar link
Pesquisar links para todos os resumos
← Versão anterior: PHP Digest No. 132

Source: https://habr.com/ru/post/pt415057/


All Articles