Maison >titres >PHP 7.4beta1 publié : nouvelles dépréciations et corrections de bugs

PHP 7.4beta1 publié : nouvelles dépréciations et corrections de bugs

藏色散人
藏色散人original
2019-07-27 10:34:414174parcourir

Récemment, l'équipe de développement PHP a voté une nouvelle dépréciation de PHP 7.4, qui devrait être publiée d'ici fin novembre. La première version bêta est désormais disponible avec des fonctionnalités corrigées. La version actuelle fournit non seulement les dépréciations nouvellement sélectionnées, mais fournit également quelques corrections de bugs.

L'équipe de développement PHP a publié la première version bêta de PHP 7.4. Cela détermine la fonctionnalité. PHP 7.4beta1 apporte quelques BugFix en plus de nouvelles dépréciations. Nous travaillons sur les changements pour la nouvelle version.

PHP 7.4beta1 a de nouvelles dépréciations

Auparavant, PHP autorisait l'utilisation interchangeable des crochets et des accolades pour accéder aux éléments du tableau et aux décalages de chaînes. Exemple tiré du PHP RFC interne de PHP pour illustrer :

$array = [1, 2];
echo $array[1]; // prints 2
echo $array{1}; // also prints 2

$string = "foo";
echo $string[0]; // prints "f"
echo $string{0}; // also prints "f"

Cette partie provoque de la confusion et des problèmes. Par exemple, les accolades ne peuvent pas être utilisées pour écrire des éléments dans un tableau :

$array[] = 3;
echo $array[2]; // prints 3
 
$array{} = 3; // Parse error: syntax error, unexpected '}'

Les tableaux ne peuvent pas être créés en utilisant la syntaxe des accolades :

$array = [1, 2]; // works
 
$array = {1, 2}; // Parse error: syntax error, unexpected '{'

Il s'avère qu'il est difficile à utiliser pour le mappage de liste :

[$one, $two] = $array; // works
 
{$one, $two} = $array; // Parse error: syntax error, unexpected ','

En conséquence, la syntaxe des accolades est désormais marquée comme obsolète et donc déconseillée lors de l'utilisation de décalages de tableau ou de chaîne de la version bêta publiée.

PHP 7.4 beta 1 apporte de nouvelles dépréciations votées par l'équipe de développement PHP la semaine dernière. 14 des méthodes répertoriées étaient obsolètes dans PHP 7.4 :

真正的类型
魔术引用遗产
array_key_exists()包含对象
FILTER_SANITIZE_MAGIC_QUOTES过滤器
反射export()方法
mb_strrpos(),编码为第三个参数
implode()参数顺序组合
从非静态闭包中取消绑定$ this
hebrevc()函数
convert_cyr_string()函数
money_format()函数
ezmlm_hash()函数
restore_include_path()函数
allow_url_include ini指令

Dans PHP 7.4beta1, toutes les méthodes mentionnées étaient obsolètes et finalement supprimées dans la version 8.0.

BugFix dans PHP 7.4beta1

En plus des dépréciations mentionnées ci-dessus, la version bêta a également préparé quelques corrections de bugs. Selon les notes de version, il existe un défaut de segmentation dans le serveur Web intégré. Ce problème devrait être résolu avec cette version bêta.

Un autre problème survient lorsque PHP est exécuté via CGI. PHP recherche un shebang (#!). S'il y a un hachage dans la première ligne, PHP ne vérifie pas si ce qui suit est un point d'exclamation, c'est donc une combinaison du hachage et du point d'exclamation (# !). Selon le rapport de bug, PHP a ignoré les lignes correspondantes et ignoré le code PHP.

Test script:
---------------
#<!--?php echo "Hello World\n"; ?-->
Second line.
 
Expected result:
----------------
X-Powered-By: PHP/5.3.3-7+squeeze3
Content-type: text/html
 
#Hello World
Second line.
 
Actual result:
--------------
X-Powered-By: PHP/5.3.3-7+squeeze3
Content-type: text/html
 
Second line.

De plus, il y a un bug où PHP mange le premier octet du programme s'il provient d'une substitution de processus (Bogue #78066). La première version bêta corrige ce bug. Pour plus d'informations sur la version actuelle, consultez les notes de version.

La bêta 1 sera suivie de la bêta 2

La sortie de PHP 7.4 est prévue le 28 novembre. Après la première version bêta, PHP 7.4beta2 sera publié le 8 août 2019. Le calendrier de PHP 7.4 peut être trouvé sur le wiki PHP.

Cet article est traduit de : https://entwickler.de/online/php/php-7-4beta1-deprecations-579902190.html

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn