Maison php教程 php手册 归纳总结PHP5.3中新增的特性

归纳总结PHP5.3中新增的特性

Jun 06, 2016 pm 07:56 PM
新特性

这篇文章主要介绍了PHP5.3新特性,结合实例总结分析了PHP5.3新增的命名空间、静态绑定、匿名函数、操作符及垃圾回收机制的相关技巧,需要的朋友可以参考下

1、命名空间 解决了类,函数和常量名冲突的问题

2、静态绑定 继承时父类可以直接调用子类重写父类的方法

class A {
  public static function who() {
    echo __CLASS__;
  }
  public static function test() {
    static::who(); // 后期静态绑定从这里开始
  }
}
class B extends A {
  public static function who() {
    echo __CLASS__;
  }
}
B::test();
Copier après la connexion

3、匿名函数,也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数。最经常用作回调函数

//匿名函数做回调函数
uasort($arr ,function($a, $b){
})
Copier après la connexion

闭包函数也可以作为变量的值来使用

$fn = function ($a) {
  echo $a;
};
$fn(1);
Copier après la connexion

PHP会自动把表达式转换成内置类Closure的 对象实例

$fn = function ($a) {
  echo $a;
};
ee($fn);
/**
 * Closure Object
(
  [parameter] => Array
    (
      [$a] => 
    )
)
*/
Copier après la connexion

匿名函数目前是通过Closure类来实现的。目前还不稳定,不适用于正式开发

3、?: 操作符

$a = 0; 
$b = 2;
ee($a ?: $b); # 2 类似js中的 ||
Copier après la connexion

4、新增常量 __DIR_

5、新的垃圾回收机制,解决了循环引用的问题

gc_enable(); // 激活循环引用收集器,默认开启
var_dump(gc_collect_cycles()); // 强制回收已无效的变量
gc_disable(); // 禁用GC
Copier après la connexion

【相关教程推荐】

1. php编程从入门到精通全套视频教程
2. php从入门到精通 
3. bootstrap教程

Déclaration de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sortie de PHP 8.3 : aperçu des nouvelles fonctionnalités Sortie de PHP 8.3 : aperçu des nouvelles fonctionnalités Nov 27, 2023 pm 12:52 PM

Sortie de PHP8.3 : aperçu des nouvelles fonctionnalités À mesure que la technologie continue de se développer et que les besoins évoluent, les langages de programmation sont constamment mis à jour et améliorés. En tant que langage de script largement utilisé dans le développement Web, PHP s'est constamment amélioré pour offrir aux développeurs des outils plus puissants et plus efficaces. La version PHP 8.3 récemment publiée apporte de nombreuses nouvelles fonctionnalités et améliorations tant attendues. Jetons un coup d'œil à ces nouvelles fonctionnalités. Initialisation des propriétés non nulles Dans les versions précédentes de PHP, si une propriété de classe ne se voyait pas explicitement attribuer une valeur, sa valeur

Un guide pour découvrir les nouvelles fonctionnalités de PHP8 et acquérir une compréhension approfondie des dernières technologies Un guide pour découvrir les nouvelles fonctionnalités de PHP8 et acquérir une compréhension approfondie des dernières technologies Dec 23, 2023 pm 01:16 PM

Une analyse approfondie des nouvelles fonctionnalités de PHP8 pour vous aider à maîtriser les dernières technologies Au fil du temps, le langage de programmation PHP n'a cessé d'évoluer et de s'améliorer. La version PHP8 récemment publiée offre aux développeurs de nombreuses nouvelles fonctionnalités et améliorations intéressantes, apportant plus de commodité et d'efficacité à notre travail de développement. Dans cet article, nous analyserons en profondeur les nouvelles fonctionnalités de PHP8 et fournirons des exemples de code spécifiques pour vous aider à mieux maîtriser ces dernières technologies. Le compilateur JIT PHP8 introduit la compilation JIT (Just-In-Time)

Nouvelle extension Redis introduite dans PHP8.1 Nouvelle extension Redis introduite dans PHP8.1 Jul 07, 2023 pm 09:41 PM

La nouvelle extension Redis introduite dans PHP8.1 Avec le développement rapide d'Internet, une grande quantité de données doit être stockée et traitée. Afin d’améliorer l’efficacité et les performances du traitement des données, la mise en cache est devenue un élément indispensable. Dans le développement PHP, Redis, en tant que système de stockage clé-valeur hautes performances, est largement utilisé dans les scénarios de mise en cache et de stockage de données. Afin d'améliorer encore l'expérience d'utilisation de Redis en PHP, PHP8.1 introduit une nouvelle extension Redis. Cet article présentera les nouvelles fonctions de cette extension et fournira.

Interprétation des nouvelles fonctionnalités du langage Go : rendre la programmation plus efficace Interprétation des nouvelles fonctionnalités du langage Go : rendre la programmation plus efficace Mar 10, 2024 pm 12:27 PM

[Interprétation des nouvelles fonctionnalités du langage Go : pour rendre la programmation plus efficace, des exemples de code spécifiques sont nécessaires] Ces dernières années, le langage Go a attiré beaucoup d'attention dans le domaine du développement logiciel, et son concept de conception simple et efficace a attiré de plus en plus développeurs. En tant que langage de programmation typé statiquement, le langage Go continue d'introduire de nouvelles fonctionnalités pour améliorer l'efficacité du développement et simplifier le processus d'écriture de code. Cet article fournira une explication détaillée des dernières fonctionnalités du langage Go et expliquera comment profiter de la commodité apportée par ces nouvelles fonctionnalités à travers des exemples de code spécifiques. Développement modulaire (GoModules) Go langage à partir de 1

Quelles sont les nouvelles fonctionnalités de php8 Quelles sont les nouvelles fonctionnalités de php8 Sep 25, 2023 pm 01:34 PM

Les nouvelles fonctionnalités de php8 incluent le compilateur JIT, la déduction de type, les paramètres nommés, les types d'union, les propriétés, les améliorations de la gestion des erreurs, la prise en charge de la programmation asynchrone, les nouvelles fonctions de bibliothèque standard et les extensions de classe anonymes. Introduction détaillée : 1. Compilateur JIT, PHP8 introduit le compilateur JIT, ce qui constitue une amélioration importante des performances. Le compilateur JIT peut compiler et optimiser certains codes d'exécution à haute fréquence en temps réel, améliorant ainsi la vitesse d'exécution. 2. Dérivation de type, PHP8 ; introduit la fonction d'inférence de type, permettant aux développeurs de déduire automatiquement le type de variables lors de la déclaration des variables, etc.

Un aperçu des nouvelles fonctionnalités de CSS3 : Comment utiliser CSS3 pour obtenir des effets de transition Un aperçu des nouvelles fonctionnalités de CSS3 : Comment utiliser CSS3 pour obtenir des effets de transition Sep 09, 2023 am 11:27 AM

Aperçu des nouvelles fonctionnalités de CSS3 : Comment utiliser CSS3 pour obtenir des effets de transition CSS3 est la dernière version de CSS Parmi les nombreuses nouvelles fonctionnalités, la plus intéressante et la plus pratique devrait être l'effet de transition. Les effets de transition peuvent rendre nos pages plus fluides et plus belles lors de l'interaction, offrant aux utilisateurs une bonne expérience visuelle. Cet article présentera l'utilisation de base des effets de transition CSS3, avec des exemples de code correspondants. Attribut transition-property : spécifiez l'effet de transition de la propriété CSS qui doit être transitionné

Aperçu des nouvelles fonctionnalités de CSS3 : Comment utiliser CSS3 pour obtenir une mise en page centrée horizontalement Aperçu des nouvelles fonctionnalités de CSS3 : Comment utiliser CSS3 pour obtenir une mise en page centrée horizontalement Sep 09, 2023 pm 04:09 PM

Aperçu des nouvelles fonctionnalités de CSS3 : Comment utiliser CSS3 pour obtenir une mise en page centrée horizontalement Dans la conception et la mise en page Web, une mise en page centrée horizontalement est une exigence courante. Dans le passé, nous utilisions souvent des astuces JavaScript ou CSS complexes pour y parvenir. Cependant, CSS3 a introduit de nouvelles fonctionnalités qui rendent les mises en page centrées horizontalement plus simples et plus flexibles. Cet article présentera quelques nouvelles fonctionnalités de CSS3 et fournira quelques exemples de code pour montrer comment utiliser CSS3 pour obtenir une mise en page centrée horizontalement. 1. Utilisez flexbox pour mettre en page le fichier

Quelles sont les nouveautés du langage go ? Quelles sont les nouveautés du langage go ? Aug 24, 2023 pm 01:36 PM

Les nouvelles fonctionnalités du langage Go sont : 1. Le module Go, utilisé pour gérer les dépendances des projets en langage Go ; 2. La gestion des erreurs, ajoutant un nouveau type d'erreur, rendant la gestion des erreurs plus flexible et concise 3. Le package de contexte, utilisé ; pour transmettre les valeurs de plage de requête entre les goroutines ; 4. Incorporation, c'est-à-dire qu'une structure peut être intégrée dans une autre structure ; 5. Package de synchronisation, pour mieux contrôler la synchronisation et la communication entre les goroutines ; types d'erreurs ; 7. Les génériques permettent aux développeurs d'écrire de manière plus flexible.

See all articles