selamat siang menjelang sore
Hay sobat...............
kali ini saya akan membagikan ilmu tentang Php Server sobat tahu apa itu Php Server kalau belum boleh sobat membaca artikel saya kalau sudah paham tentang Php Server sobat boleh memberikan kritik dan saran untuk artikel saya
- Pengertian
PHP is a server-side scripting language designed for web development but also used as a general-purpose programming language. Originally created by Rasmus Lerdorf in 1994,the PHP reference implementation is now produced by The PHP Group.PHP originally stood for Personal Home Page,but it now stands for the recursive acronym PHP: Hypertext Preprocessor.
PHP code may be embedded into HTML code, or it can be used in combination with various web template systems, web content management systems and web frameworks. PHP code is usually processed by a PHP interpreter implemented as a module in the web server or as a Common Gateway Interface (CGI) executable. The web server combines the results of the interpreted and executed PHP code, which may be any type of data, including images, with the generated web page. PHP code may also be executed with a command-line interface (CLI) and can be used to implement standalone graphical applications.
The standard PHP interpreter, powered by the Zend Engine, is free software released under the PHP License. PHP has been widely ported and can be deployed on most web servers on almost every operating system and platform, free of charge.
The PHP language evolved without a written formal specification or standard until 2014, leaving the canonical PHP interpreter as a de facto standard. Since 2014 work has gone on to create a formal PHP specification.
During the 2010s there have been increased efforts towards standardisation and code sharing in PHP applications by projects such as PHP-FIG in the form of PSR-initiatives as well as Composer dependency manager and the Packagist repository.
B.dalam Bahasa Indonesia
PHP adalah server-side scripting language yang dirancang untuk pengembangan web tetapi juga digunakan sebagai bahasa pemrograman tujuan umum . Awalnya dibuat oleh Rasmus Lerdorf pada tahun 1994, PHP implementasi referensi sekarang diproduksi oleh The PHP Group. [5] PHP awalnya berdiri untuk Personal Home Page, tetapi sekarang berdiri untuk rekursif singkatan PHP: Hypertext Preprocessor.
Kode PHP dapat tertanam ke HTML kode, atau dapat digunakan dalam kombinasi dengan berbagai sistem web template yang , sistem manajemen konten web dan kerangka web . Kode PHP biasanya diproses oleh PHP interpreter diimplementasikan sebagai modul di web server atau sebagai Common Gateway Interface (CGI) executable. Web server menggabungkan hasil dari kode ditafsirkan dan dilaksanakan PHP, yang mungkin semua jenis data, termasuk gambar, dengan halaman web yang dihasilkan. Kode PHP dapat dijalankan dengan antarmuka baris perintah (CLI) dan dapat digunakan untuk mengimplementasikan standalone aplikasi grafis .
PHP interpreter standar, didukung oleh Zend mesin , adalah perangkat lunak bebas yang dirilis di bawah Lisensi PHP . PHP telah banyak porting dan dapat digunakan pada kebanyakan server web pada hampir setiap sistem operasi dan platform yang , gratis.
Bahasa PHP berkembang tanpa tertulis spesifikasi formal atau standar hingga 2014, meninggalkan interpreter PHP kanonik sebagai de facto standar. Sejak 2014 bekerja telah pergi untuk membuat spesifikasi PHP formal.
Selama 2010-an telah terjadi peningkatan upaya menuju standarisasi dan berbagi kode dalam aplikasi PHP dengan proyek-proyek seperti PHP-gambar dalam bentuk PSR-inisiatif serta Komposer ketergantungan manajer dan repositori Packagist .
- Sejarah
PHP development began in 1995 when Rasmus Lerdorf wrote several Common Gateway Interface (CGI) programs in C, which he used to maintain his personal homepage. He extended them to work with web forms and to communicate with databases, and called this implementation "Personal Home Page/Forms Interpreter" or PHP/FI.
PHP/FI could help to build simple, dynamic web applications. To accelerate bug reporting and to improve the code, Lerdorf initially announced the release of PHP/FI as "Personal Home Page Tools (PHP Tools) version 1.0" on the Usenet discussion group comp.infosystems.www.authoring.cgi on June 8, 1995. This release already had the basic functionality that PHP has as of 2013. This included Perl-like variables, form handling, and the ability to embed HTML. The syntax resembled that of Perl but was simpler, more limited and less consistent.
Lerdorf did not intend the early PHP to become a new programming language, but it grew organically, with Lerdorf noting in retrospect: "I don’t know how to stop it, there was never any intent to write a programming language […] I have absolutely no idea how to write a programming language, I just kept adding the next logical step on the way."A development team began to form and, after months of work and beta testing, officially released PHP/FI 2 in November 1997.
The fact that PHP lacked an original overall design but instead developed organically has led to inconsistent naming of functions and inconsistent ordering of their parameters.In some cases, the function names were chosen to match the lower-level libraries which PHP was "wrapping", while in some very early versions of PHP the length of the function names was used internally as a hash function, so names were chosen to improve the distribution of hash values.
PHP 3 and 4
Zeev Suraski and Andi Gutmans rewrote the parser in 1997 and formed the base of PHP 3, changing the language's name to the recursive acronym PHP: Hypertext Preprocessor.Afterwards, public testing of PHP 3 began, and the official launch came in June 1998. Suraski and Gutmans then started a new rewrite of PHP's core, producing the Zend Engine in 1999. They also founded Zend Technologies in Ramat Gan, Israel.On May 22, 2000, PHP 4, powered by the Zend Engine 1.0, was released.As of August 2008 this branch reached version 4.4.9. PHP 4 is no longer under development nor will any security updates be released.
PHP 5
On July 14, 2006, PHP 5 was released, powered by the new Zend Engine II.PHP 5 included new features such as improved support for object-oriented programming, the PHP Data Objects (PDO) extension (which defines a lightweight and consistent interface for accessing databases), and numerous performance enhancements. In 2008 PHP 5 became the only stable version under development. Late static binding had been missing from PHP and was added in version 5.3.Many high-profile open-source projects ceased to support PHP 4 in new code as of February 5, 2008, because of the GoPHP5 initiative,
provided by a consortium of PHP developers promoting the transition from PHP 4 to PHP 5.
Over time, PHP interpreters became available on most existing 32-bit and 64-bit operating systems, either by building them from the PHP source code, or by using pre-built binaries.For the PHP versions 5.3 and 5.4, the only available Microsoft Windows binary distributions were 32-bit x86 builds,requiring Windows 32-bit compatibility mode while using Internet Information Services (IIS) on a 64-bit Windows platform. PHP version 5.5 made the 64-bit x86-64 builds available for Microsoft Windows.
PHP 6 and Unicode
PHP received mixed reviews due to lacking native Unicode support at the core language level.[33][34] In 2005, a project headed by Andrei Zmievski was initiated to bring native Unicode support throughout PHP, by embedding the International Components for Unicode (ICU) library, and representing text strings as UTF-16 internally.[35] Since this would cause major changes both to the internals of the language and to user code, it was planned to release this as version 6.0 of the language, along with other major features then in development.[36]However, a shortage of developers who understood the necessary changes, and performance problems arising from conversion to and from UTF-16, which is rarely used in a web context, led to delays in the project.[37] As a result, a PHP 5.3 release was created in 2009, with many non-Unicode features back-ported from PHP 6, notably namespaces. In March 2010, the project in its current form was officially abandoned, and a PHP 5.4 release was prepared containing most remaining non-Unicode features from PHP 6, such as traits and closure re-binding.[38] Initial hopes were that a new plan would be formed for Unicode integration, but as of 2014 none have been adopted.
PHP 7
During 2014 and 2015, a new major PHP version was developed, which was numbered PHP 7. The numbering of this version involved some debate.[39] While the PHP 6 Unicode experiment had never been released, several articles and book titles referenced the PHP 6 name, which might have caused confusion if a new release were to reuse the name.[40] After a vote, the name PHP 7 was chosen.[41]The foundation of PHP 7 is a PHP branch that was originally dubbed PHP next generation (phpng). It was authored by Dmitry Stogov, Xinchen Hui and Nikita Popov,[42] and aimed to optimize PHP performance by refactoring the Zend Engine while retaining near-complete language compatibility.[43] As of 14 July 2014, WordPress-based benchmarks, which served as the main benchmark suite for the phpng project, showed an almost 100% increase in performance. Changes from phpng are also expected to make it easier to improve performance in the future, as more compact data structures and other changes are seen as better suited for a successful migration to a just-in-time (JIT) compiler.[44] Because of the significant changes, the reworked Zend Engine is called Zend Engine 3, succeeding Zend Engine 2 used in PHP 5.[45]
Because of major internal changes in phpng, it must receive a new major version number of PHP, rather than a minor PHP 5 release, according to PHP's release process.[46] Major versions of PHP are allowed to break backward-compatibility of code and therefore PHP 7 presented an opportunity for other improvements beyond phpng that require backward-compatibility breaks. In particular, it involved the following changes:
- Many fatal- or recoverable-level legacy PHP error mechanisms were replaced with modern object-oriented exceptions[47]
- The syntax for variable dereferencing was reworked to be internally more consistent and complete, allowing the use of the operators ->, [], (), {}, and :: with arbitrary meaningful left-hand-side expressions[48]
- Support for legacy PHP 4-style constructor methods was deprecated[49]
- The behavior of the foreach statement was changed to be more predictable[50]
- Constructors for the few classes built-in to PHP which returned null upon failure were changed to throw an exception instead, for consistency[51]
- Several unmaintained or deprecated server application programming interfaces (SAPIs) and extensions were removed from the PHP core, most notably the legacy mysql extension[52]
- The behavior of the list() operator was changed to remove support for strings[53]
- Support for legacy ASP-style PHP code delimiters (<% and %>, <script language=php> and </script>) was removed[54]
- An oversight allowing a switch statement to have multiple default clauses was fixed[55]
- Support for hexadecimal number support in some implicit conversions from strings to number types was removed[56]
- The left-shift and right-shift operators were changed to behave more consistently across platforms[57]
- Conversions between integers and floating point numbers were tightened and implemented more consistently across platforms[57][58]
B.dalam Bahasa Indonesia
Awal sejarah
Pengembangan PHP dimulai pada 1995 ketika Rasmus Lerdorf menulis beberapa Common Gateway Interface program (CGI) di C, yang ia digunakan untuk menjaga nya homepage pribadi . Dia diperpanjang mereka untuk bekerja dengan bentuk web dan untuk berkomunikasi dengan database , dan disebut implementasi ini "Personal Home Page / Forms Interpreter" atau PHP / FI.PHP / FI bisa membantu untuk membangun, sederhana dinamis aplikasi web . Untuk mempercepat bug pelaporan dan untuk meningkatkan kode, Lerdorf awalnya mengumumkan rilis PHP / FI sebagai "Personal Home Page Tools (PHP Tools) versi 1.0" pada Usenet kelompok diskusi comp.infosystems.www.authoring.cgi pada tanggal 8 Juni, 1995. [13] [14] rilis ini sudah memiliki fungsi dasar yang PHP memiliki sebagai 2013 . Ini termasuk variabel Perl-seperti , bentuk penanganan, dan kemampuan untuk menanamkan HTML. The sintaks mirip yang dari Perl tapi sederhana, lebih terbatas dan kurang konsisten. [5]
Lerdorf tidak berniat PHP awal untuk menjadi bahasa pemrograman baru, tapi itu tumbuh secara organik, dengan Lerdorf mencatat dalam retrospeksi: "Saya tidak tahu bagaimana menghentikannya, tidak pernah ada niat untuk menulis bahasa pemrograman [...] I sama sekali tidak tahu bagaimana menulis sebuah bahasa pemrograman, saya hanya terus menambahkan langkah logis berikutnya dalam perjalanan. " [15] sebuah tim pengembangan mulai terbentuk dan, setelah berbulan-bulan bekerja dan beta testing, resmi dirilis PHP / FI 2 di november 1997.
Fakta bahwa PHP tidak memiliki desain keseluruhan asli melainkan dikembangkan secara organik telah menyebabkan penamaan tidak konsisten dari fungsi dan pemesanan konsisten parameter mereka. [16] Dalam beberapa kasus, nama-nama fungsi yang dipilih sesuai dengan perpustakaan tingkat rendah yang PHP adalah " pembungkus ", [17] sedangkan di beberapa versi awal dari PHP panjang nama fungsi digunakan secara internal sebagai fungsi hash , sehingga nama-nama yang dipilih untuk meningkatkan distribusi nilai hash. [18]
PHP 3 dan 4
Pada tanggal 22 Mei 2000, PHP 4, didukung oleh Zend Engine 1.0, dirilis. [5] Pada Agustus 2008 cabang ini mencapai versi 4.4.9. PHP 4 tidak lagi dalam pengembangan dan tidak akan update keamanan akan dirilis. [21] [22]
PHP 5
Pada tanggal 14 Juli 2006, PHP 5 dirilis, didukung oleh Zend baru mesin II. [5] PHP 5 termasuk fitur baru seperti peningkatan dukungan untuk pemrograman berorientasi objek , Objek PHP Data (PDO) ekstensi (yang mendefinisikan ringan dan antarmuka yang konsisten untuk mengakses database), dan berbagai perangkat tambahan kinerja. [23] pada tahun 2008 PHP 5 menjadi satu-satunya versi stabil dalam pengembangan. Akhir statis mengikat telah hilang dari PHP dan telah ditambahkan di versi 5.3. [24] [25]Banyak profil tinggi proyek open-source berhenti mendukung PHP 4 kode baru sebagai tanggal 5 Februari 2008, karena inisiatif GoPHP5, [26] yang disediakan oleh konsorsium pengembang PHP mempromosikan transisi dari PHP 4 ke PHP 5. [ 27] [28]
Seiring waktu, juru PHP menjadi tersedia pada kebanyakan ada 32-bit dan 64-bit sistem operasi, baik dengan membangun mereka dari kode sumber PHP, atau dengan menggunakan binari pre-built. [29] Untuk versi PHP 5.3 dan 5.4, yang hanya tersedia Microsoft Windows distribusi biner yang 32-bit x86 membangun, [30] [31] membutuhkan Mode Windows kompatibilitas 32-bit saat menggunakan Internet Information Services (IIS) pada platform Windows 64-bit. PHP versi 5.5 membuat 64-bit x86-64 membangun tersedia untuk Microsoft Windows. [32]
PHP 6 dan Unicode
PHP menerima kritikan karena kurang asli Unicode dukungan di tingkat bahasa inti. [33] [34] Pada tahun 2005, sebuah proyek yang dipimpin oleh Andrei Zmievski dimulai untuk membawa dukungan Unicode asli seluruh PHP, oleh embedding Komponen Internasional untuk Unicode (ICU ) perpustakaan, dan mewakili string teks sebagai UTF-16 internal. [35] karena ini akan menyebabkan perubahan besar baik ke internal bahasa dan kode pengguna, direncanakan untuk rilis ini sebagai versi 6.0 bahasa, bersama dengan lainnya fitur utama kemudian dalam pembangunan. [36]Namun, kekurangan pengembang yang memahami perubahan yang diperlukan, dan masalah kinerja yang timbul dari konversi ke dan dari UTF-16, yang jarang digunakan dalam konteks web, menyebabkan keterlambatan proyek. [37] Akibatnya, PHP 5.3 rilis diciptakan pada tahun 2009, dengan banyak non-Unicode memiliki back-porting dari PHP 6, terutama ruang nama. Pada bulan Maret 2010, proyek dalam bentuk yang sekarang secara resmi ditinggalkan, dan rilis PHP 5,4 disiapkan mengandung paling tersisa non-Unicode fitur dari PHP 6, seperti sifat dan penutupan kembali mengikat. [38] harapan awal adalah bahwa baru rencana akan dibentuk untuk integrasi Unicode, tetapi sebagai 2014 tidak telah diadopsi.
PHP 7
Selama tahun 2014 dan 2015, versi PHP utama baru dikembangkan, yang berjumlah PHP 7. Penomoran versi ini melibatkan beberapa perdebatan. [39] Sementara PHP 6 Unicode percobaan belum pernah dirilis, beberapa artikel dan judul buku referensi PHP 6 nama, yang mungkin menyebabkan kebingungan jika rilis baru adalah untuk menggunakan kembali nama. [40] Setelah pemungutan suara, nama PHP 7 dipilih. [41]Landasan PHP 7 adalah PHP cabang yang awalnya dijuluki PHP generasi berikutnya (phpng). Hal itu ditulis oleh Dmitry Stogov, Xinchen Hui dan Nikita Popov, [42] dan bertujuan untuk mengoptimalkan kinerja PHP oleh refactoring Zend Engine sementara tetap mempertahankan kompatibilitas bahasa dekat-lengkap. [43] Pada 14 Juli 2014 , WordPress berbasis benchmark, yang menjabat sebagai benchmark suite utama untuk proyek phpng, menunjukkan peningkatan hampir 100% dalam kinerja. Perubahan dari phpng juga diharapkan untuk membuatnya lebih mudah untuk meningkatkan kinerja di masa depan, seperti struktur data lebih kompak dan perubahan lainnya dipandang sebagai lebih cocok untuk migrasi sukses untuk just-in-time (JIT) compiler. [44] Karena perubahan signifikan, ulang Zend Engine disebut Zend Engine 3, berhasil Zend Engine 2 yang digunakan dalam PHP 5. [45]
Karena perubahan internal besar dalam phpng, itu harus menerima baru besar versi jumlah PHP, daripada minor PHP 5 rilis, menurut proses rilis PHP. [46] versi utama dari PHP diperbolehkan untuk istirahat mundur-kompatibilitas kode dan Oleh karena itu PHP 7 disajikan kesempatan untuk perbaikan lain di luar phpng yang membutuhkan mundur-kompatibilitas istirahat. Secara khusus, melibatkan perubahan berikut:
- Banyak mekanisme error fatal- atau dipulihkan tingkat warisan PHP digantikan dengan objek-modern berorientasi pengecualian [47]
- Sintaks untuk variabel dereferencing adalah ulang secara internal lebih konsisten dan lengkap, yang memungkinkan penggunaan operator ->, [], (), {}, dan :: dengan bermakna ekspresi kiri-sisi yang sewenang-wenang [48]
- Dukungan untuk warisan PHP metode konstruktor 4 gaya yang ditinggalkan [49]
- Perilaku pernyataan foreach diubah menjadi lebih diprediksi [50]
- Konstruktor untuk beberapa kelas built-in untuk PHP yang kembali nol pada kegagalan diubah untuk melemparkan pengecualian bukan, untuk konsistensi [51]
- Beberapa terawat atau usang antarmuka pemrograman aplikasi server (SAPIs) dan ekstensi telah dihapus dari inti PHP, terutama ekstensi warisan mysql [52]
- Perilaku operator daftar () diubah untuk menghapus dukungan untuk string [53]
- Dukungan untuk warisan ASP-gaya pembatas kode PHP (<% dan%>, <script language = php> dan </ script>) telah dihapus [54]
- Pengawasan memungkinkan pernyataan switch untuk memiliki beberapa klausul standar tetap [55]
- Dukungan untuk dukungan sejumlah heksadesimal dalam beberapa konversi implisit dari string untuk jenis nomor dihapus [56]
- The kiri-shift dan kanan pergeseran operator berubah berperilaku lebih konsisten di seluruh platform [57]
- Konversi antara bilangan bulat dan angka floating point diperketat dan dilaksanakan secara lebih konsisten di seluruh platform [57] [58]
Awal sejarah
PHP / FI bisa membantu untuk membangun, sederhana dinamis aplikasi web . Untuk mempercepat bug pelaporan dan untuk meningkatkan kode, Lerdorf awalnya mengumumkan rilis PHP / FI sebagai "Personal Home Page Tools (PHP Tools) versi 1.0" pada Usenet kelompok diskusi comp.infosystems.www.authoring.cgi pada tanggal 8 Juni, 1995. [13] [14] rilis ini sudah memiliki fungsi dasar yang PHP memiliki sebagai 2013 . Ini termasuk variabel Perl-seperti , bentuk penanganan, dan kemampuan untuk menanamkan HTML. The sintaks mirip yang dari Perl tapi sederhana, lebih terbatas dan kurang konsisten. [5]
Lerdorf tidak berniat PHP awal untuk menjadi bahasa pemrograman baru, tapi itu tumbuh secara organik, dengan Lerdorf mencatat dalam retrospeksi: "Saya tidak tahu bagaimana menghentikannya, tidak pernah ada niat untuk menulis bahasa pemrograman [...] I sama sekali tidak tahu bagaimana menulis sebuah bahasa pemrograman, saya hanya terus menambahkan langkah logis berikutnya dalam perjalanan. " [15] sebuah tim pengembangan mulai terbentuk dan, setelah berbulan-bulan bekerja dan beta testing, resmi dirilis PHP / FI 2 di november 1997.
Fakta bahwa PHP tidak memiliki desain keseluruhan asli melainkan dikembangkan secara organik telah menyebabkan penamaan tidak konsisten dari fungsi dan pemesanan konsisten parameter mereka. [16] Dalam beberapa kasus, nama-nama fungsi yang dipilih sesuai dengan perpustakaan tingkat rendah yang PHP adalah " pembungkus ", [17] sedangkan di beberapa versi awal dari PHP panjang nama fungsi digunakan secara internal sebagai fungsi hash , sehingga nama-nama yang dipilih untuk meningkatkan distribusi nilai hash. [18]
PHP 3 dan 4
Pada tanggal 22 Mei 2000, PHP 4, didukung oleh Zend Engine 1.0, dirilis. [5] Pada Agustus 2008 cabang ini mencapai versi 4.4.9. PHP 4 tidak lagi dalam pengembangan dan tidak akan update keamanan akan dirilis. [21] [22]
PHP 5
Pada tanggal 14 Juli 2006, PHP 5 dirilis, didukung oleh Zend baru mesin II. [5] PHP 5 termasuk fitur baru seperti peningkatan dukungan untuk pemrograman berorientasi objek , Objek PHP Data (PDO) ekstensi (yang mendefinisikan ringan dan antarmuka yang konsisten untuk mengakses database), dan berbagai perangkat tambahan kinerja. [23] pada tahun 2008 PHP 5 menjadi satu-satunya versi stabil dalam pengembangan. Akhir statis mengikat telah hilang dari PHP dan telah ditambahkan di versi 5.3. [24] [25]Banyak profil tinggi proyek open-source berhenti mendukung PHP 4 kode baru sebagai tanggal 5 Februari 2008, karena inisiatif GoPHP5, [26] yang disediakan oleh konsorsium pengembang PHP mempromosikan transisi dari PHP 4 ke PHP 5. [ 27] [28]
Seiring waktu, juru PHP menjadi tersedia pada kebanyakan ada 32-bit dan 64-bit sistem operasi, baik dengan membangun mereka dari kode sumber PHP, atau dengan menggunakan binari pre-built. [29] Untuk versi PHP 5.3 dan 5.4, yang hanya tersedia Microsoft Windows distribusi biner yang 32-bit x86 membangun, [30] [31] membutuhkan Mode Windows kompatibilitas 32-bit saat menggunakan Internet Information Services (IIS) pada platform Windows 64-bit. PHP versi 5.5 membuat 64-bit x86-64 membangun tersedia untuk Microsoft Windows. [32]
PHP 6 dan Unicode
PHP menerima kritikan karena kurang asli Unicode dukungan di tingkat bahasa inti. [33] [34] Pada tahun 2005, sebuah proyek yang dipimpin oleh Andrei Zmievski dimulai untuk membawa dukungan Unicode asli seluruh PHP, oleh embedding Komponen Internasional untuk Unicode (ICU ) perpustakaan, dan mewakili string teks sebagai UTF-16 internal. [35] karena ini akan menyebabkan perubahan besar baik ke internal bahasa dan kode pengguna, direncanakan untuk rilis ini sebagai versi 6.0 bahasa, bersama dengan lainnya fitur utama kemudian dalam pembangunan. [36]Namun, kekurangan pengembang yang memahami perubahan yang diperlukan, dan masalah kinerja yang timbul dari konversi ke dan dari UTF-16, yang jarang digunakan dalam konteks web, menyebabkan keterlambatan proyek. [37] Akibatnya, PHP 5.3 rilis diciptakan pada tahun 2009, dengan banyak non-Unicode memiliki back-porting dari PHP 6, terutama ruang nama. Pada bulan Maret 2010, proyek dalam bentuk yang sekarang secara resmi ditinggalkan, dan rilis PHP 5,4 disiapkan mengandung paling tersisa non-Unicode fitur dari PHP 6, seperti sifat dan penutupan kembali mengikat. [38] harapan awal adalah bahwa baru rencana akan dibentuk untuk integrasi Unicode, tetapi sebagai 2014 tidak telah diadopsi.
PHP 7
Selama tahun 2014 dan 2015, versi PHP utama baru dikembangkan, yang berjumlah PHP 7. Penomoran versi ini melibatkan beberapa perdebatan. [39] Sementara PHP 6 Unicode percobaan belum pernah dirilis, beberapa artikel dan judul buku referensi PHP 6 nama, yang mungkin menyebabkan kebingungan jika rilis baru adalah untuk menggunakan kembali nama. [40] Setelah pemungutan suara, nama PHP 7 dipilih. [41]Landasan PHP 7 adalah PHP cabang yang awalnya dijuluki PHP generasi berikutnya (phpng). Hal itu ditulis oleh Dmitry Stogov, Xinchen Hui dan Nikita Popov, [42] dan bertujuan untuk mengoptimalkan kinerja PHP oleh refactoring Zend Engine sementara tetap mempertahankan kompatibilitas bahasa dekat-lengkap. [43] Pada 14 Juli 2014 , WordPress berbasis benchmark, yang menjabat sebagai benchmark suite utama untuk proyek phpng, menunjukkan peningkatan hampir 100% dalam kinerja. Perubahan dari phpng juga diharapkan untuk membuatnya lebih mudah untuk meningkatkan kinerja di masa depan, seperti struktur data lebih kompak dan perubahan lainnya dipandang sebagai lebih cocok untuk migrasi sukses untuk just-in-time (JIT) compiler. [44] Karena perubahan signifikan, ulang Zend Engine disebut Zend Engine 3, berhasil Zend Engine 2 yang digunakan dalam PHP 5. [45]
Karena perubahan internal besar dalam phpng, itu harus menerima baru besar versi jumlah PHP, daripada minor PHP 5 rilis, menurut proses rilis PHP. [46] versi utama dari PHP diperbolehkan untuk istirahat mundur-kompatibilitas kode dan Oleh karena itu PHP 7 disajikan kesempatan untuk perbaikan lain di luar phpng yang membutuhkan mundur-kompatibilitas istirahat. Secara khusus, melibatkan perubahan berikut:
- Banyak mekanisme error fatal- atau dipulihkan tingkat warisan PHP digantikan dengan objek-modern berorientasi pengecualian [47]
- Sintaks untuk variabel dereferencing adalah ulang secara internal lebih konsisten dan lengkap, yang memungkinkan penggunaan operator ->, [], (), {}, dan :: dengan bermakna ekspresi kiri-sisi yang sewenang-wenang [48]
- Dukungan untuk warisan PHP metode konstruktor 4 gaya yang ditinggalkan [49]
- Perilaku pernyataan foreach diubah menjadi lebih diprediksi [50]
- Konstruktor untuk beberapa kelas built-in untuk PHP yang kembali nol pada kegagalan diubah untuk melemparkan pengecualian bukan, untuk konsistensi [51]
- Beberapa terawat atau usang antarmuka pemrograman aplikasi server (SAPIs) dan ekstensi telah dihapus dari inti PHP, terutama ekstensi warisan mysql [52]
- Perilaku operator daftar () diubah untuk menghapus dukungan untuk string [53]
- Dukungan untuk warisan ASP-gaya pembatas kode PHP (<% dan%>, <script language = php> dan </ script>) telah dihapus [54]
- Pengawasan memungkinkan pernyataan switch untuk memiliki beberapa klausul standar tetap [55]
- Dukungan untuk dukungan sejumlah heksadesimal dalam beberapa konversi implisit dari string untuk jenis nomor dihapus [56]
- The kiri-shift dan kanan pergeseran operator berubah berperilaku lebih konsisten di seluruh platform [57]
- Konversi antara bilangan bulat dan angka floating point diperketat dan dilaksanakan secara lebih konsisten di seluruh platform [57] [58]
0 comments:
Post a Comment