Neue Auswahl mit Links zu Nachrichten und Materialien. In Release: PHP 8.0.1 Release, MySQL Engine auf PHP von Vimeo und anderen Releases, aktualisierte Enum und neue Vorschläge für PHP 8.1, "Schwachstelle" in Laminas, Tools, Artikel, Videos, PHP Live Digest um 20:00 Uhr Moskauer Zeit.
Viel Spaß beim Lesen!
Nachrichten und Veröffentlichungen
- PHP 8.0.1, 7.4.14, 7.3.26 — CVE-2020-7071 url_parse() -
http://php.net\@aliyun.com/aaa.do
. 8.0 7.4 .
PHP — Skyeng PHP Digest.- PHP - Git: — github.com/php/doc-base!
PHP Internals
- [RFC] Enumerations, Round 2 — Enum PHP . : () , Enum ; ;
value()
. № 194 . - [RFC] Bundling ext/simdjson into core — PHP simdjson. ext/json json .
, . PECL , . - [RFC] Array unpacking with string keys — PHP 5.6 :
variadic_function(...['apple', 'banana', 'lemon']);
PHP 7.4 :
$parts = ['apple', 'pear']; $fruits = ['banana', 'orange', ...$parts, 'watermelon']; // ['banana', 'orange', 'apple', 'pear', 'watermelon'];
. PHP 8.0 , .
PHP 8.1 :
$array1 = ['a' => 'apple', 'p' => 'pear']; $array2 = ['b' => 'banana', 'o' => 'orange']; $array = [...$array1, ...$array2]; // : $array = array_merge($array1, $array2);
- [PR] Use 'ENT_QUOTES|ENT_SUBSTITUTE' for HTML encoding and decoding functions — - ,
htmlspecialchars()
ENT_QUOTES
ENT_SUBSTITUTE
:
• ENT_QUOTES — WordPress
• ENT_QUOTES — Blade (Laravel)
• ENT_QUOTES | ENT_SUBSTITUTE — Twig (Symfony or Slim)
• ENT_QUOTES | ENT_SUBSTITUTE — CodeIgniter
• ENT_QUOTES | ENT_SUBSTITUTE — CakePHP
• ENT_QUOTES | ENT_SUBSTITUTE — Yii
.
[RFC] Restrict $GLOBALS usage — . $GLOBALS
PHP 8.1Lesen, Schreiben, Ausgeben und Nichteinstellen funktionieren weiterhin:$GLOBALS['x'] = 1; echo $GLOBALS['x'] isset($GLOBALS['x']); unset($GLOBALS['x']);
Ein Versuch, die Variable selbst zu ändern,$GLOBALS
führt jedoch zu einem Fehler:$GLOBALS = []; $GLOBALS =& $x; $x =& $GLOBALS; unset($GLOBALS);
,$GLOBALS
:asort($GLOBALS); // > Compile-time error
PHP PHP.
- [RFC] Concepts to improve mysqli extension — PHP PDO. mysqli. , .
- [RFC] Add array_is_list(array $array): bool — ,
true
,0, 1, 2 ... count($value)-1
.is_list()
array_is_list()
. .
Symfony PHP 8.1 . - PHP 8.1 : xxHash MurmurHash3.
Dump Debugging Evolved — Ray — Spatie — Ray. ray($anything)
, PHP- .
Xdebug, .var_dump(...)/die()
, .
PHP Live.- AdamGaskins/barcoder — SVG- (QR, Datamatrix, ..).
- vimeo/php-mysql-engine — MySQL PHP. , , MySQL . PDO PDO MySQL. : .
- jvoisin/snuffleupagus — PHP- c. , , , , .
- mbunge/php-attributes — / PHP 8. .
- mlocati/docker-php-extension-installer — PHP- Docker.
- php-opencv/php-opencv — ( , , . .) PHP 8. .
Symfony
- 5 , Symfony 5.2 + PHP 8.0
- How to create service bundles for a Symfony application
- Symfony #732 (4-10 2021)
- 2020 Symfony
Laravel
- REST API tailflow/laravel-orion.
Laravel– (28 2020 – 10 2021)- lorisleiva/laravel-actions 2.0 — -.
Laravel Snippet #26 — Jetstream 2.x, Forge Circles, Spark «Next», React SPAs.
Yii
Zend / Laminas
- 2020 Laminas Project
- Zend Framework / Laminas — «» :
class MyClassWithToString { public $name; public function __construct($name) { $this->name = $name; } public function __toString() { return (string) $this->name; } } $input = unserialize('O:19:"MyClassWithToString":1:{s:4:"name";s:15:"/tmp/etc/passwd";}'); if ($input instanceof MyClassWithToString) { unlink($input); }
is_string()
unlink()
. , . php.net ,unserializie()
.
, 2017 ,unserialize()
( PHP).
Yii.
Async PHP
- Swoole PHP 4.6.0 — URL.
- amphp/mysql-dbal — Doctrine DBAL/ORM Amphp v3.
- PHP FPM Kubernetes .
- — , PHP. , public/private get set
clone-with.
PSR-7. - PHP
legacy — , ! PHP
/
PHP Live #2: PHP 8.1, , .
Event Sourcing — EventSaucePHP/EventSauce.
-- Mathhew Napoli — m50/simple.
60+ - PHP-, .- PHP- 3D .
- github.com/thank-you-php — PHP. -
.
Heute wird es den dritten Stream geben, der auf PHP Digest basiert. Analyse von Nachrichten und Links aus der Ausgabe mit Details und Details, eine Übersicht über das, was gesendet wurde, interessant, aber nicht in der Ausgabe enthalten, die Ergebnisse der Zeichnung und ein neuer Wettbewerb mit Elefanten.
Ab 20:00 Uhr Moskau, Minsk / 19:00 Uhr Kiew.
Wenn Sie einen Fehler oder eine Ungenauigkeit bemerken, teilen Sie uns dies bitte in einem persönlichen Habr oder Telegramm mit .
Weitere Neuigkeiten und Kommentare zum PHP Digest Telegram-Kanal .
Link senden
Links in allen Digests suchen
← Vorherige Ausgabe: PHP Digest # 195