PHP摘要151(2019年2月25日至3月11日)


带有新闻和资料链接的新鲜选择。 发行中:PHP,Laravel 5.8,Xdebug 2.7和其他发行版的更新,3个新的RFC,2个被接受,以及来自PHP Internals的概念,一部分有用的工具等等。

祝您阅读愉快!



新闻与发布



PHP内部


  • [RFC] Saner字符串到数字的比较 -Nikita Popov建议,在她最近的RFC中,更改==的行为,并使松散比较不易出错。 特别是,建议仅在要比较的字符串实际上是数字字符串时才使用数字比较。 否则,将数字转换为字符串,然后对字符串进行比较。

    该建议要求更改比较运算符<=> != >== !=>>=<和And <=switch结构,函数in_array()sort()等。

    作为回应,人们收到了不同程度的激进主义思想:从引入特殊标志declare('strict_comparison=1'); ,这通常会将所有==变成=== ,然后才提供取消==的提议。

    同时, 在7.4中,如果比较结果与PHP 8中的预期结果不同,则可能会引发警告
  • [RFC]允许在数字字符串中尾随空白 -旨在提高一致性但又被削弱的另一项建议。 建议在数字行的末尾允许空格,即"123 " == " 123"以及所有其他运算以及带有前导空格的行都可以使用。
  • [RFC]内部函数的一致类型错误 -提议已被接受,因此在PHP 8中,如果传递了错误类型的参数,则内置函数将引发TypeError,因此不会返回null。
  • [RFC]弱引用 -接受有关实现弱链接的建议。
  • [RFC]锁定类 -建议为类引入一个新的locked关键字。 对于动态使用属性,将关闭此类,即,您无法访问未声明的属性:
    隐藏文字
     locked class TestClass { public $definedProp; } $t = new testClass(); $t->definedProp = "OK"; echo $t->definedProp; unset($t->definedProp); echo $t->nonExistentProp; // Error $t->nonExistentProp = "Not OK"; // Error unset($t->definedProp); // Error 
  • 影片 PHP内部新闻:第1集 -作者Xdebug Derick Rethans的新播客。 在第一期中,与Nikita Popov进行了对话。
  • 允许从__toString() -从Nikita的PR中 抛出,并修复了旧的PHP问题之一 -无法在__toString抛出异常。
  • 列表理解 -Sarah Goleman提出的一个概念,用于PHP的列表理解的实现。 语法不如Python优雅,但看起来很有趣:
     $a = [1, 2, 3]; $mul = 3; $c = [ for $a as $v yield $mul * $v use ($mul) ]; 

工具



Symfony



拉拉韦尔



i



异步php



学习资料



感谢您的关注!

如果您发现错误或不准确,请在PM中通知我。
问题和建议写在邮件推特上

有关PHP Digest Telegram Channel的更多新闻和评论。

发送链接
搜索所有摘要的链接
上一期:PHP文摘第150号

Source: https://habr.com/ru/post/zh-CN443220/


All Articles