Nouvelle sélection avec des liens vers des nouvelles et des documents. Dans la version: objets dans les initialiseurs, espaces de noms d'extension et autres suggestions RFC pour PHP 8.1. Mise à jour du PSR-11, proposition d'interface d'horloge PSR. Une partie d'outils utiles, des vidéos, des podcasts, des articles et PHP Digest Live à 20h00 GMT.
Bonne lecture!
Nouvelles et communiqués
- PHP 8.0.3 , PHP 7.4.16 .
- PSR ClockInterface
, , .
:
namespace Psr\Clock; interface ClockInterface { /** * Returns the current time as a DateTimeImmutable Object */ public function now(): \DateTimeImmutable; }
- PSR-11 Container Interface — , 1.1, , 2.0 — .
- Git clone — . Git 2.30.2.
- PhpStorm 2021.1 EAP — : PHP- , JSONPath . , EAP .
- Composer 1.x — 2021 API packagist.org .
PHP Internals
- [RFC] New in initializers
PHP , , , . , , — . .
, , .
static $x = new Foo(); const C = new Foo(); #[AnAttribute(new Foo())] class Test { public const C = new Foo(); public static $prop = new Foo(); public $prop = new Foo(); public function __construct( private Logger $logger = new NullLogger() ) {} } function test($param = new Foo()) {}
new
, .
. , , , , , . PHP Live.
- [RFC] Namespaces in bundled PHP extensions
, PHP, . .
RFC , PHP. .OpenSSLCertificate
OpenSSL\Certificate
.
, , RFC . :
str_contains()
->String\contains()
in_array()
->Array\contains()
.
PHP 9. - [RFC] Static variables in inherited methods
, , . , .
RFC , .
class A { public static function counter() { static $i = 0; return ++$i; } } class B extends A {} var_dump(A::counter()); // int(1) var_dump(A::counter()); // int(2) var_dump(B::counter()); // int(3) var_dump(B::counter()); // int(4)
- [RFC] Fibers
. , . : , , PHP . , :
Swoole. , Swoole PHP, — , .
Joe Watkins, , /. krakjoe/parallel .
, , — , Swoole parallel. - [RFC] noreturn type
Psalm PHPStan PHP —noreturn
.
, ,exit()
,die()
,trigger_error()
.
function redirect(string $uri): noreturn { header('Location: ' . $uri); exit(); } function redirectToLoginPage(): noreturn { redirect('/login'); }
Hack, Python, Psalm, PHPStan PhpStorm#[NoReturn]
exitpoint .phpstormmeta.php. - [RFC] debug_backtrace_depth(int $limit=0): int — debug_backtrace_depth(int $limit=0), . , .
:count(debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, $limit=0))
. - [RFC] println(string $data = ''): int —
println
,stdout
.str_contains()
, , .
- spiral/RoadRunner v2.0.0 — PHP Golang.
- QratorLabs/Smocky — runkit7 mock- PHPUnit .
- markdown.
- phpize.online — PHP- 3v4l.org SQL.
Symfony
- symfony/runtime — PHP-FPM, CLI, PHP-PM, Swoole . .
- Symfony 6 PHP 8.0
- ansien/RapidFormBundle — Symfony, PHP 8.
- Symfony
- Symfony Docker
- CI/CD Symfony GitLab
- Symfony #741 (8-14 2021)
Laravel
- RCE Laravel <= v8.4.2 debug mode —
file_get_contents
/file_put_contents
FTP. facade/ignition. - Laravel 7 — LTS 2022.
- spatie/laravel-remote — Artisan spatie/ssh. Freek Van der Herten, c .
- squirephp/squire — Eloquent ( , , .).
- Laravel
- Laravel– (22 – 7 2021)
Yii
- FFI PHP
- PHP.Watch: PHP.
- PHP — .
- Matthias Noback: — ? — , .
- PHP arm64 vs x86_64 — AWS ARM 20% .
- nginx+fpm Swoole PHP API 91% — github.com/appwrite.
- PHP Xdebug 3, Docker Compose PhpStorm.
- CI Laminas — GitHub Actions , 200+ .
- — .
- Run, config, run: Badoo
- 1-:
- ,
- PHP- — , , .
- : PHP
- : ! PHP.
- PHP Release Radar #6: Bref 1.0 — C Matthieu Napoli.
- PHP Internals News #77 — PHP 8.1 fsync David Gebler.
- PHP Internals News #78 — C Andreas Heigl PHP Git. , , PHP Russia.
- PHP №87: PHP 2021
- PHP №86: PHP 8
- 12: –
Après une courte pause, nous revenons avec un stream et le présentateur Valentin Udaltsov!
Il y aura une analyse des nouvelles et des liens de la question avec des détails et des détails, l'opinion de Valentine sur les RFC et les articles. Intéressant mais non inclus dans le numéro, les résultats du dessin et une nouvelle compétition avec les éléphants.
À partir de 20h00 Moscou, Minsk / 19h00 Kiev.
Si vous remarquez une erreur ou une inexactitude, veuillez nous en informer dans un habr personnel ou un télégramme .
Plus de nouvelles et de commentaires sur la chaîne PHP Digest Telegram .
Envoyer le lien
Rechercher des liens dans tous les résumés
← Numéro précédent: PHP-Digest # 199