Maison développement back-end Problème PHP Quelle est la différence entre php5.2 et 5.3

Quelle est la différence entre php5.2 et 5.3

Sep 27, 2021 pm 02:24 PM
区别

Les différences entre php5.2 et 5.3 sont : 1. php5.3 abandonne les fonctions telles que Register Globals et Magic Quotes ; 2. Ajoute de nouvelles méthodes magiques __invoke() et __callStatic();

Quelle est la différence entre php5.2 et 5.3

L'environnement d'exploitation de cet article : système Windows10, php 5.2&&php 5.3, ordinateur thinkpad t480.

Beaucoup d'amis ne connaissent peut-être pas la différence entre php 5.2 et php 5.3. Examinons de plus près les différences entre ces deux versions et quelles sont les différences spécifiques. Examinons-les ensemble.

Jetons d'abord un coup d'œil à la version php 5.2.

php5.2(2006-2011)

JSON的支持
       增加了json_encode(),json_decode()等函数
Copier après la connexion

Jetons ensuite un œil à la version php 5.3.

php5.3 (2009-2012)

PHP5.3 est une très grosse mise à jour. Elle ajoute de nombreuses nouvelles fonctionnalités et apporte également quelques modifications qui ne sont pas rétrocompatibles.

1. Fonctionnalités obsolètes

Les fonctionnalités suivantes sont obsolètes si elles sont activées dans le fichier de configuration, PHP émettra un avertissement au moment de l'exécution.

Register Globals
Magic Quotes
Safe Mode
Copier après la connexion

2. Fonction anonyme

f u n c = f u n c t i o n ( func=function(func=function(arg){
echo $arg;
}
$func(‘hello’);
Copier après la connexion

3. Ajout de méthodes magiques __invoke(), __callStatic();

随着匿名函数的加入,PHP 引入了一个新的魔术方法 __invoke().
该魔术方法会在将一个对象作为函数调用时被调用:
class A
{
    public function __invoke($str)
    {
        print "A::__invoke(): {$str}";
    }
}

$a = new A;
$a("Hello World");
输出毫无疑问是:  A::__invoke(): Hello World

__callStatic() 则会在调用一个不存在的静态方法时被调用。
Copier après la connexion

4. L'espace de noms, mais pas parfait, ne prend en charge que les classes

5. Nowdoc

Certaines améliorations ont été apportées à Heredoc et Nowdoc, qui sont tous deux utilisés pour intégrer de grandes chaînes dans le code PHP.

7. Utilisez const pour définir des constantes

À partir de PHP5.3, il est pris en charge d'utiliser const pour définir des constantes dans l'espace de noms et les classes globales.

旧式风格:
define("XOOO", "Value");
新式风格:

const XXOO = "Value";
const 形式仅适用于常量,不适用于运行时才能求值的表达式:
// 正确
const XXOO = 1234;
// 错误
const XXOO = 2 * 617;
(在5.6版后可以了)
Copier après la connexion

8. La forme abrégée de l'opérateur ternaire

Ancien style :

echo $a ? $a : “No Value”;
Copier après la connexion

peut être abrégé comme suit :

echo $a ?: “No Value”;
Copier après la connexion

C'est-à-dire que si la deuxième partie de l'opérateur ternaire est omise, la première partie sera remplacée par défaut .

9.Phar

Phar est PHP Archive. C'était à l'origine juste une bibliothèque dans Pear. Elle a ensuite été réécrite en tant qu'extension C en PHP5.3 et intégrée à PHP.

Phar est utilisé pour regrouper plusieurs scripts .php (peut également regrouper d'autres fichiers) dans un fichier compressé .phar (généralement au format ZIP).

Le but est d'imiter le .jar de Java, non, le but est de rendre la publication d'applications PHP plus pratique. Il fournit également des fonctions telles que la vérification de la signature numérique.

Les fichiers .phar peuvent être interprétés et exécutés par le moteur PHP tout comme les fichiers .php. En même temps, vous pouvez également écrire du code comme celui-ci pour inclure (exiger) le code dans .phar :

require(“xxoo.phar”);
require(“phar://xxoo.phar/xo/ox.php”);
Copier après la connexion

Apprentissage recommandé :

formation php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

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

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

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)

Bitcoin a-t-il des actions? Bitcoin a-t-il des actions? Mar 03, 2025 pm 06:42 PM

Bitcoin a-t-il des actions?

Deepseek Quelle est la différence entre la version R1 et V3 Deepseek Quelle est la différence entre la version R1 et V3 Feb 19, 2025 pm 03:24 PM

Deepseek Quelle est la différence entre la version R1 et V3

Résumé des FAQ pour une utilisation profonde Résumé des FAQ pour une utilisation profonde Feb 19, 2025 pm 03:45 PM

Résumé des FAQ pour une utilisation profonde

Quelle est la différence entre le trading pré-commercial et après-marché? Explication détaillée des différences entre le pré-commercialisation et le trading après le marché Quelle est la différence entre le trading pré-commercial et après-marché? Explication détaillée des différences entre le pré-commercialisation et le trading après le marché Mar 03, 2025 pm 11:54 PM

Quelle est la différence entre le trading pré-commercial et après-marché? Explication détaillée des différences entre le pré-commercialisation et le trading après le marché

Pourquoi Bittensor est-il le 'Bitcoin' sur la piste AI? Pourquoi Bittensor est-il le 'Bitcoin' sur la piste AI? Mar 04, 2025 pm 04:06 PM

Pourquoi Bittensor est-il le 'Bitcoin' sur la piste AI?

Y a-t-il une différence entre le bitcoin sud-coréen et le bitcoin domestique? Y a-t-il une différence entre le bitcoin sud-coréen et le bitcoin domestique? Mar 05, 2025 pm 06:51 PM

Y a-t-il une différence entre le bitcoin sud-coréen et le bitcoin domestique?

Pepe a acheté et vendu de manière importante, Mutm est-il un investissement plus intelligent en 2025? Pepe a acheté et vendu de manière importante, Mutm est-il un investissement plus intelligent en 2025? Mar 03, 2025 pm 07:09 PM

Pepe a acheté et vendu de manière importante, Mutm est-il un investissement plus intelligent en 2025?

Proxy vertical: scénarios d'application et interprétation du potentiel perturbateur de la procuration native du cryptage Proxy vertical: scénarios d'application et interprétation du potentiel perturbateur de la procuration native du cryptage Mar 04, 2025 am 10:21 AM

Proxy vertical: scénarios d'application et interprétation du potentiel perturbateur de la procuration native du cryptage

See all articles