内容简介:PHP 8 brings lots of new features, in this list we'll look at the most outstanding ones. If you want a full list and background information, you can read about all thingsnew in PHP 8.Attributes — aka annotations — you can about them in depth inthis post.Un
PHP 8 brings lots of new features, in this list we'll look at the most outstanding ones. If you want a full list and background information, you can read about all thingsnew in PHP 8.
use \Support\Attributes\ListensTo; class ProductSubscriber { <<ListensTo(ProductCreated::class)>> public function onProductCreated(ProductCreated $event) { /* … */ } <<ListensTo(ProductDeleted::class)>> public function onProductDeleted(ProductDeleted $event) { /* … */ } }
Attributes — aka annotations — you can about them in depth inthis post.
public function foo(Foo|Bar $input): int|float; public function bar(mixed $input): mixed;
Union types allows for type hinting several types. There's also a new mixed
type which representsseveral types at once.
interface Foo { public function bar(): static; }
The static
return type is built-in.
[JIT] opcache.jit=5
The just-in-time compiler for PHP.
$triggerError = fn() => throw new MyError(); $foo = $bar['offset'] ?? throw new OffsetDoesNotExist('offset');
throw
can be used in expressions.
try { // Something goes wrong } catch (MySpecialException) { Log::error("Something went wrong"); }
Non-capturing catches: no need to specify an exception variable if you don't need it.
public function( string $parameterA, int $parameterB, Foo $objectfoo, ) { // … }
Trailing commas are allowed in parameter lists
str_contains('string with lots of words', 'words'); str_starts_with('haystack', 'hay'); str_ends_with('haystack', 'stack');
New string functions.
Let's not fool ourselves: 8 code blocks isn't enough to summarise all great new things in PHP 8. So let's just add a few more.
function bar(Stringable $stringable) { /* … */ }
A new
Stringable
interface
.
$object::class
Call ::class
directly on objects.
There's even more. If you want a full list, you can find iton this blog.
What feature are you looking forward to the most? Let me know on Twitter or viaemail.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
C程序设计(第四版)
谭浩强 / 清华大学出版社 / 2010-6-1 / 33.00元
由谭浩强教授著、清华大学出版社出版的《C程序设计》是一本公认的学习C语言程序设计的经典教材。根据C语言的发展和计算机教学的需要,作者在《C程序设计(第三版)》的基础上进行了修订。 《C程序设计(第4版)》按照C语言的新标准C99进行介绍,所有程序都符合C99的规定,使编写程序更加规范;对C语言和程序设计的基本概念和要点讲解透彻,全面而深入;按照作者提出的“提出问题―解决问题―归纳分析”三部曲......一起来看看 《C程序设计(第四版)》 这本书的介绍吧!