Rumah > Artikel > pembangunan bahagian belakang > Apakah perbezaan antara php5.2 dan 5.3
Perbezaan antara php5.2 dan 5.3 ialah: 1. php5.3 telah meninggalkan fungsi seperti Register Globals dan Magic Quotes 2. Menambahkan kaedah ajaib baharu __invoke() dan __callStatic(); pemalar dengan const.
Persekitaran pengendalian artikel ini: sistem windows10, php 5.2&&php 5.3, komputer thinkpad t480.
Ramai rakan mungkin tidak tahu perbezaan antara php 5.2 dan php 5.3. Mari kita lihat dengan lebih dekat perbezaan antara kedua-dua versi ini dan apakah perbezaan spesifiknya. Mari kita lihat bersama-sama.
Mari kita lihat versi php 5.2 dahulu.
php5.2(2006-2011)
JSON的支持 增加了json_encode(),json_decode()等函数
Kemudian mari kita lihat versi php 5.3.
php5.3(2009-2012)
PHP5.3 ialah kemas kini yang sangat besar, menambahkan banyak ciri baharu dan juga membuat beberapa pengubahsuaian yang tidak serasi ke belakang lihatlah.
1. Ciri ditamatkan
Ciri berikut ditamatkan jika didayakan dalam fail konfigurasi, PHP akan mengeluarkan amaran pada masa jalan.
Register Globals Magic Quotes Safe Mode
2. Fungsi tanpa nama
f u n c = f u n c t i o n ( func=function(func=function(arg){ echo $arg; } $func(‘hello’);
3 Menambahkan kaedah ajaib __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() 则会在调用一个不存在的静态方法时被调用。
4 tidak sempurna, hanya menyokong kelas
5 Pengikatan statik lewat
6 Heredoc dan Nowdoc
Membuat beberapa penambahbaikan pada Heredoc dan Nowdoc, kedua-duanya menggunakan Digunakan untuk membenamkan rentetan besar. dalam kod PHP.
7. Gunakan const untuk menentukan pemalar
Bermula dari PHP 5.3, ia disokong untuk menggunakan const untuk mentakrifkan pemalar dalam ruang nama dan kelas global.
旧式风格: define("XOOO", "Value"); 新式风格: const XXOO = "Value"; const 形式仅适用于常量,不适用于运行时才能求值的表达式: // 正确 const XXOO = 1234; // 错误 const XXOO = 2 * 617; (在5.6版后可以了)
8. Singkatan pengendali ternary
Gaya lama:
echo $a ? $a : “No Value”;
boleh disingkatkan sebagai:
echo $a ?: “No Value”;
iaitu jika Ditinggalkan bahagian kedua pengendali ternary akan lalai kepada bahagian pertama.
9.Phar
Phar ialah Arkib PHP pada asalnya hanya perpustakaan dalam Pear Ia kemudiannya ditulis semula sebagai sambungan C dalam PHP5.3 dan dibina ke dalam PHP.
Phar digunakan untuk membungkus berbilang skrip .php (juga boleh membungkus fail lain) ke dalam fail mampat .phar (biasanya dalam format ZIP).
Tujuannya adalah untuk meniru .jar Java, tidak, tujuannya adalah untuk menjadikan penerbitan aplikasi PHP lebih mudah. Ia juga menyediakan fungsi seperti pengesahan tandatangan digital.
Fail .phar boleh ditafsir dan dilaksanakan oleh enjin PHP sama seperti fail .php Pada masa yang sama, anda juga boleh menulis kod seperti ini untuk memasukkan (memerlukan) kod dalam .phar:
require(“xxoo.phar”); require(“phar://xxoo.phar/xo/ox.php”);
Pembelajaran yang disyorkan: latihan php
Atas ialah kandungan terperinci Apakah perbezaan antara php5.2 dan 5.3. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!