ニュースや資料へのリンクを含む新鮮なセレクション。この号の内容:非同期PHPのファイバー、最初のネイティブ属性、PHP 8.1のショートマッチおよびその他のRFC提案、ツール、多くのビデオ、記事、ポッドキャスト。
ハッピーリーディングとハッピーニューイヤー!
PHP内部
- [RFC]ファイバー-非同期PHPの優れた提案。詳細はTelegramチャンネルにありました。要するに、これはジェネレータの改良版であり、 ReactPHP / Ampなどのライブラリに基づいて非同期コードをはるかに簡単で理解しやすいものにすることができます。
Amp v3はまだ開発中ですが、promiseの代わりにすでにファイバーを使用しています。ここだの例:好きなものを非同期/のawaitアナログルックスは、use Amp\Delayed; use Amp\Loop; use function Amp\async; use function Amp\await; // , int , , . $callback = function (int $id): int { return await(new Delayed(1000, $id)); // Await promise resolution. }; // $callback int, but is executed asynchronously. $result = $callback(1); // , 1 . \var_dump($result); // , . $result = await([ // , 1 . async($callback, 2), async($callback, 3), ]); \var_dump($result); // 2 .
- [RFC] #[Deprecated] Attribute — PHP 8 , . —
#[Deprecated]
. ,#[Deprecated]
, PHPE_DEPRECATED
.
, , .
, PhpStorm 2020.3. , . , - final, . - [RFC] #[NamedParameterAlias] Attribute — PHP 8.1.
, — . , API .
RFC: Named Parameters explicit opt in.
— , , .<?php use NamedParameterAlias; // Old function signature: function log($arg1) {} // New function signature introduces better name function log(#[NamedParameterAlias("arg1")] $message) {} log(arg1: "Hello World!"); log(message: "Hello World!");
Attribute::IS_REPEATABLE
. , . - [RFC] Short match —
match
PHP 8switch
.
switch(true) { ...
,if-elseif-...else
.match(true)
.
RFCmatch
match(true)
.
«».PHP 8.0: $a = 3; print match (true) { $a < 2 => 'small', $a == 3 => 'medium', default => 'large', };
: $a = 3; print match { $a < 2 => 'small', $a == 3 => 'medium', default => 'large', };
- [RFC] Configurable callback to dump results of expressions in `php -a` — Tyson Andre
php -a
.
bobthecow/psysh, PHP . . - [RFC] Add is_list(mixed $value): bool — RFC Tyson Andre.
is_list()
,true
,0, 1, 2 ... count($value)-1
.
- [PR] Add support for property initialization during cloning — - .
class Foo { public $bar; public $baz; public function withProperties($bar, $baz) { $self = clone $this; $self->bar = $bar; $self->baz = $baz; return $self; } } class Foo { public $bar; public $baz; public function withProperties($bar, $baz) { return clone $this with { bar: $bar, baz: $baz, }; } }
- Rector 0.9 — , , PHP 8.
- FriendsOfPHP/proxy-manager-lts — Ocramius/ProxyManager/ PHP >=7.1.
- fullpipe/check-them — . fullpipe1.
- multiavatar/multiavatar-php — (). 'php':

- dantleech/maestro2 — PHP- — ansible PHP . GitHub Actions. .
- matomo-org/matomo 4.0 — Google Analytics PHP. Piwik.
- jolicode/JoliNotif — PHP-. Win, macOS, Linux.
- skrtdev/NovaGram — API -.
Symfony
Laravel
- Laravel
- Blackfire Laravel Vapor
Laravel,
Freek Murzee,
Laravel Internals #3 — Laravel .
Laravel Snippet #24: Fortify, Jetstream, Breeze
Yii
- Yii 2.0.40
- yiisoft/test-support — , PSR-.
- , PHP — Matt Brown, Psalm, PHP Vimeo.
- – , — GitHub Git.
- Flysystem 2.0 .
Magento 2
- PHP 8
Xdebug 2 Xdebug 3

PHP — ? 1 (), 2 ()
: 
: PHP- []
PHP : , , []
Highload PHP Redis ( , ManyChat).
PHP 8 — . PHP .
PHPのコードレビュー:アップロードツーS3-ウェブフック-マシューナポリの著者によって公開コードレビューBREF。
Xdebug3の動作モードについて-デバッガー/プロファイラー/カバレッジコレクターの構成に関するXdebugの作成者からのビデオ。
面白い
- elephpant PHP8:InPHPinityが誕生しました-新しい象PHP 8は、事前注文が可能です。

今日は2番目のPHPダイジェストストリームがあります。号からのすべてのニュースとリンク+詳細、送信されたものの概要、興味深いが号には含まれていません、描画の結果、象との新しいコンテスト。
20:00モスクワ、ミンスク/ 19:00キエフから。
投票:PHPの年を要約して象を演じる
エラーや不正確さに気付いた場合は、個人のハブまたは電報でお知らせください。
PHPダイジェスト テレグラムチャネルに関するその他のニュースとコメント 。
リンクを送信
すべてのダイジェストで リンクを検索
← 前号:PHPダイジェスト#194