PHP 8.1には列挙型があり、さらに2つが承認され、2つが拒否され、3つがPHP8.1の新しいRFCになります。WordPressはサイトの40%で使用されています。strict_typesを削除する必要がある理由、空()を使用しない理由、およびツール、ビデオ、記事、ポッドキャスト、およびグリニッジ標準時10:00のPHPダイジェストライブ。
読書を楽しむ!
ニュースとリリース
- PhpStorm 2021.1 EAP
IDE. , . : -, HTML , .
2020.3.1 / Code With Me. - xdebug.cloud
Xdebug, — PHP- , , Docker, Vagrant, . - WordPress 40% 10 — w3techs .
- 2021- PHP? — 27 .
- 25 , 19:00 PHP of By. « - PHP» temporal.io.
- phpcommunity.ru.
PHP Internals
- [RFC] Enumerations
44 7 . PHP 8.1 enum.
enum RfcStatus { case Draft; case UnderDiscussion; case Accepted; } function setRfcStatus(RfcStatus $status) :void { // ... } setRFCStatus(RfcStatus::Accepted); // setRFCStatus('Draft'); // Deprecation notice 8.1, TypeError 9.0
RFC php.watch.
Symfony . - [RFC] Deprecate passing null to non-nullable arguments of internal functions
PHPnull
,nullable
.
PHP 8.1TypeError
. ,str_contains("", null)
. 3v4l.org/OVoa0A.
: , PHP. - [RFC] Array unpacking with string keys
PHP 8.1 , :
$array1 = ['a' => 'apple', 'p' => 'pear']; $array2 = ['b' => 'banana', 'o' => 'orange']; $array = [...$array1, ...$array2]; // : $array = array_merge($array1, $array2);
- [RFC] Fibers
, .
Fiber API Ruby.
ReactPHP trowski/react-fiber:
$loop = new FiberLoop(Factory::create()); $browser = new Browser($loop); $request = function (string $method, string $url) use ($browser, $loop): void { /** @var Response $response */ $response = $loop->await($browser->requestStreaming($method, $url)); /** @var ReadableStreamInterface $stream */ $stream = $response->getBody(); $body = $loop->await(Stream\buffer($stream)); var_dump(\sprintf( '%s %s; Status: %d; Body length: %d', $method, $url, $response->getStatusCode(), \strlen($body) )); }; $requests = []; $requests[] = $loop->async($request, 'GET', 'https://reactphp.org'); $requests[] = $loop->async($request, 'GET', 'https://google.com'); $requests[] = $loop->async($request, 'GET', 'https://www.php.net'); $loop->await(Promise\all($requests));
- [RFC] CachedIterable (rewindable, allows any key&repeating keys)
Tyson Andre . . - Proposal: namespace the SPL
Spl
:Spl\FixedArray
->SplFixedArray
. ,CachedIterable
ReverseIterator
.
azjezz/psl.
- [RFC] mysqli bind in execute
Kamil Tekielamysqli
. RFCmysqli_stmt::execute()
. , ,mysqli_stmt::bind_param()
. , bind_param . - [RFC] PHP\iterable\any() and all() on iterables —
any()
all()
. - [RFC] var_representation(): readable alternative to var_export() —
var_export
, brick/varexporter. - [Draft] Unify PHP's typing modes — PHP . — , , –
strict_types=1
– . , , .
George Peter Banyard, RFC.
. - Observer API PHP 8 — API . Xdebug, APM- New Relic, Tideways, ..
- renoki-co/php-k8s — PHP.
- marcocesarato/php-conventional-changelog — changelog .
- andrey-helldar/package-wizard — CLI- .
- rryqszq4/ngx_php7 — nginx PHP. PHP, /, , .
Symfony
- symfony/panther 1.0 — Symfony Selenium WebDriver E2E .
- Tobias Nyholm: Symfony Lock Messenger
- .
- Symfony #738 (15-21 2021)
Laravel
Yii
Async PHP
- swow/swow — PHP, libuv, , PDO, file_get_ontents() .. ( ). , Swoole.
PhpStorm
- PhpStorm Christoph Rumpel.
- 26 PhpStorm
- Dependency Confusion PHP.
- Benjamin Eberlei: empty() PHP? .
- PHP — .
- MySQL > 40000 QPS, — .
- .
- : , , .
- , - PHP.
- SafetyNet Attestation — PHP.
- Tagged Unions PHP ( Rust).
- : ?
/
- shutdown — () PHP Point.
- PHP ( , Simtech Development)
- . PHP, MySQL, .
- PHP №85 — CTO «», Apache Camel, PHP 4 , Lamoda.
- PHP Release Radar #5 — Flysystem 2 Frank de Jonge.
- PHP8.1で受け入れられているRFCに関するNikitaPopovによるPHPInternals Newsポッドキャスト:nullの非推奨、配列のアンパック、グローバル使用の制限、シリアライズ可能の段階的廃止。
面白い
- mario-deluna / php-renderは、FFIを使用しなくても、純粋なPHP3Dレンダラーです。シェーダー、.objファイルのパーサーなど。サンプル
コード:
すでにPHPダイジェストに基づく従来のストリーム。詳細と追加の詳細を含む問題からのニュースとリンクの解析があります。
20:00モスクワ、ミンスク/ 19:00キエフから。
エラーや不正確さに気付いた場合は、個人のHabrまたは電報でお知らせください。
PHPダイジェスト テレグラムチャネルに関するその他のニュースとコメント 。
リンクを送信
すべてのダイジェストで リンクを検索
← 前号:PHP-ダイジェスト№198