Assalamualaikum Wr.Wb
Mari Belajar PHP
Pengertian PHP
PHP
adalah bahasa scripting server-side yang dirancang untuk pengembangan
web tetapi juga digunakan sebagai bahasa pemrograman tujuan umum. Awalnya
dibuat oleh Rasmus Lerdorf pada tahun 1994, implementasi referensi
PHP sekarang diproduksi oleh The PHP Group PHP awalnya berdiri untuk
Personal Home Page, tapi sekarang singkatan rekursif backronym
PHP:. Hypertext Preprocessor.
Kode PHP dapat ditanamkan ke dalam kode HTML, atau dapat digunakan dalam kombinasi dengan sistem berbagai web Template, sistem manajemen konten web dan kerangka web. kode PHP biasanya diproses oleh interpreter PHP 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 aplikasi grafis mandiri. PHP interpreter standar, didukung oleh Zend Engine, adalah perangkat lunak gratis yang dirilis dibawah lisensi PHP. PHP telah banyak porting dan dapat digunakan pada kebanyakan server web pada hampir setiap sistem operasi dan platform, gratis. Bahasa PHP berkembang tanpa spesifikasi formal tertulis atau standar hingga 2014, meninggalkan interpreter PHP kanonik sebagai standar de facto. 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
Kode PHP dapat ditanamkan ke dalam kode HTML, atau dapat digunakan dalam kombinasi dengan sistem berbagai web Template, sistem manajemen konten web dan kerangka web. kode PHP biasanya diproses oleh interpreter PHP 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 aplikasi grafis mandiri. PHP interpreter standar, didukung oleh Zend Engine, adalah perangkat lunak gratis yang dirilis dibawah lisensi PHP. PHP telah banyak porting dan dapat digunakan pada kebanyakan server web pada hampir setiap sistem operasi dan platform, gratis. Bahasa PHP berkembang tanpa spesifikasi formal tertulis atau standar hingga 2014, meninggalkan interpreter PHP kanonik sebagai standar de facto. 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
SejarahSejarah awalRasmus Lerdorf, yang menulis komponen asli Common Gateway Interface
(CGI), bersama-sama dengan Andi Gutmans dan Zeev Suraski, yang menulis
ulang parser yang terbentuk PHP 3.pengembangan
PHP dimulai pada 1994 ketika Rasmus Lerdorf menulis beberapa program
Common Gateway Interface (CGI) di C,yang digunakan untuk
mempertahankan homepage pribadinya. 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 digunakan untuk membangun, aplikasi web sederhana yang dinamis. Untuk
mempercepat pelaporan bug dan memperbaiki kode, Lerdorf awalnya
mengumumkan rilis PHP / FI sebagai "Personal Home Page Tools (PHP Tools)
versi 1.0" pada Usenet diskusi kelompok
comp.infosystems.www.authoring.cgi pada 8 Juni 1995 . rilis ini sudah memiliki fungsi dasar yang PHP memiliki
sebagai 2013. ini termasuk variabel Perl-seperti, bentuk penanganan, dan
kemampuan untuk menanamkan HTML. sintaks mirip yang dari Perl tapi sederhana, lebih terbatas dan kurang konsisten. PHP
awal tidak dimaksudkan untuk menjadi bahasa pemrograman baru, dan
tumbuh secara organik, dengan Lerdorf mencatat dalam retrospeksi: "Saya
tidak tahu bagaimana menghentikannya, tidak pernah ada niat untuk
menulis bahasa pemrograman [...] Aku benar-benar tidak tahu bagaimana menulis sebuah bahasa pemrograman, saya hanya terus
menambahkan langkah logis berikutnya dalam perjalanan. "sebuah tim
pengembangan mulai terbentuk dan, setelah berbulan-bulan bekerja dan
pengujian beta, resmi dirilis PHP / FI 2 pada November 1997.Fakta
bahwa PHP awalnya tidak dirancang melainkan dikembangkan secara organik
telah menyebabkan penamaan tidak konsisten dari fungsi dan pemesanan
konsisten parameter mereka.Dalam beberapa kasus, nama-nama fungsi
yang dipilih sesuai dengan perpustakaan tingkat rendah yang PHP adalah "
pembungkus ", 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. PHP 3 dan 4Zeev
Suraski dan Andi Gutmans menulis ulang parser pada tahun 1997 dan
membentuk dasar dari PHP 3, mengubah nama bahasa untuk rekursif
singkatan PHP:. Hypertext Preprocessor Setelah itu, uji publik
dari PHP 3 dimulai, dan peluncuran resmi datang pada bulan Juni 1998. Suraski dan Gutmans kemudian mulai
menulis ulang baru inti PHP, memproduksi Zend Engine pada tahun 1999.
Mereka juga mendirikan Zend Technologies di Ramat Gan, Israel. Pada tanggal 22 Mei 2000, PHP 4, didukung oleh Zend Engine 1.0, dirilis. Pada Agustus 2008 cabang ini mencapai versi 4.4.9. PHP 4 tidak lagi dalam pengembangan dan tidak akan update keamanan akan dirilis. PHP 5Pada
tanggal 13 Juli 2004, PHP 5 dirilis, didukung oleh Zend baru mesin II.
PHP 5 termasuk fitur baru seperti meningkatkan 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. pada tahun 2008 PHP 5 menjadi
satu-satunya versi stabil dalam pengembangan. Akhir mengikat statis telah hilang dari PHP dan telah ditambahkan di versi 5.3. Banyak
profil tinggi proyek open-source berhenti mendukung PHP 4 kode baru
sebagai tanggal 5 Februari 2008, karena inisiatif GoPHP5, yang
disediakan oleh konsorsium pengembang PHP mempromosikan transisi dari
PHP 4 ke PHP 5.
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. Untuk versi PHP 5.3 dan 5.4, yang hanya tersedia distribusi biner Microsoft Windows yang 32-bit x86 membangun, 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. PHP 6 dan UnicodePHP menerima kritikan karena kurang dukungan Unicode asli di tingkat bahasa inti. Pada tahun 2005, sebuah proyek yang dipimpin oleh Andrei Zmievski dimulai untuk membawa dukungan Unicode asli seluruh PHP, dengan menanamkan Komponen Internasional untuk Unicode (ICU ) perpustakaan, dan mewakili string teks sebagai UTF-16 internal. 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. 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. 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. [37] harapan awal adalah bahwa baru rencana akan dibentuk untuk integrasi Unicode, tetapi sebagai 2014 tidak telah diadopsi.PHP 7Selama tahun 2014 dan 2015, versi PHP utama baru dikembangkan, yang berjumlah PHP 7. Penomoran versi ini melibatkan beberapa perdebatan. 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. Setelah pemungutan suara, nama PHP 7 dipilih. Landasan PHP 7 adalah cabang PHP yang awalnya dijuluki PHP generasi berikutnya (phpng). Hal itu ditulis oleh Dmitry Stogov, Xinchen Hui dan Nikita Popov, dan bertujuan untuk mengoptimalkan kinerja PHP oleh refactoring Zend Engine sementara tetap mempertahankan kompatibilitas bahasa dekat-lengkap. benchmark Pada 14 Juli 2014, WordPress berbasis, 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. Karena perubahan signifikan, ulang Zend Engine disebut Zend Engine 3, berhasil Zend Engine 2 yang digunakan dalam PHP 5.
Karena perubahan internal besar dalam phpng, harus menerima utama nomor versi baru dari PHP, daripada minor PHP 5 rilis, menurut proses rilis PHP. 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 pengecualian berorientasi objek yang modern
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
Dukungan untuk warisan PHP metode konstruktor 4 gaya yang ditinggalkan
Perilaku pernyataan foreach diubah menjadi lebih diprediksi
Konstruktor untuk beberapa kelas built-in untuk PHP yang kembali nol pada kegagalan diubah untuk melemparkan pengecualian bukan, untuk konsistensi
Beberapa terawat atau usang antarmuka pemrograman aplikasi server (SAPIs) dan ekstensi telah dihapus dari inti PHP, terutama ekstensi warisan mysql
Perilaku operator daftar () diubah untuk menghapus dukungan untuk string
Dukungan untuk warisan ASP-gaya pembatas kode PHP (<% dan%>, <script language = php> dan </ script>) telah dihapus
Pengawasan memungkinkan pernyataan switch untuk memiliki beberapa klausul standar tetap
Dukungan untuk dukungan sejumlah heksadesimal dalam beberapa konversi implisit dari string untuk jenis nomor dihapus
Kiri-shift dan kanan-shift operator berubah berperilaku lebih konsisten di seluruh platform
Konversi antara bilangan bulat dan angka floating point diperketat dan dilaksanakan secara lebih konsisten di seluruh platform PHP 7 juga termasuk fitur bahasa baru. Terutama, memperkenalkan tipe kembali deklarasi untuk fungsi, yang melengkapi deklarasi jenis parameter yang ada, dan dukungan untuk jenis skalar (bilangan bulat, float, string, dan boolean) dalam parameter dan kembali deklarasi tipe.
Semoga Bermanfaat ..
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. Untuk versi PHP 5.3 dan 5.4, yang hanya tersedia distribusi biner Microsoft Windows yang 32-bit x86 membangun, 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. PHP 6 dan UnicodePHP menerima kritikan karena kurang dukungan Unicode asli di tingkat bahasa inti. Pada tahun 2005, sebuah proyek yang dipimpin oleh Andrei Zmievski dimulai untuk membawa dukungan Unicode asli seluruh PHP, dengan menanamkan Komponen Internasional untuk Unicode (ICU ) perpustakaan, dan mewakili string teks sebagai UTF-16 internal. 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. 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. 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. [37] harapan awal adalah bahwa baru rencana akan dibentuk untuk integrasi Unicode, tetapi sebagai 2014 tidak telah diadopsi.PHP 7Selama tahun 2014 dan 2015, versi PHP utama baru dikembangkan, yang berjumlah PHP 7. Penomoran versi ini melibatkan beberapa perdebatan. 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. Setelah pemungutan suara, nama PHP 7 dipilih. Landasan PHP 7 adalah cabang PHP yang awalnya dijuluki PHP generasi berikutnya (phpng). Hal itu ditulis oleh Dmitry Stogov, Xinchen Hui dan Nikita Popov, dan bertujuan untuk mengoptimalkan kinerja PHP oleh refactoring Zend Engine sementara tetap mempertahankan kompatibilitas bahasa dekat-lengkap. benchmark Pada 14 Juli 2014, WordPress berbasis, 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. Karena perubahan signifikan, ulang Zend Engine disebut Zend Engine 3, berhasil Zend Engine 2 yang digunakan dalam PHP 5.
Karena perubahan internal besar dalam phpng, harus menerima utama nomor versi baru dari PHP, daripada minor PHP 5 rilis, menurut proses rilis PHP. 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 pengecualian berorientasi objek yang modern
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
Dukungan untuk warisan PHP metode konstruktor 4 gaya yang ditinggalkan
Perilaku pernyataan foreach diubah menjadi lebih diprediksi
Konstruktor untuk beberapa kelas built-in untuk PHP yang kembali nol pada kegagalan diubah untuk melemparkan pengecualian bukan, untuk konsistensi
Beberapa terawat atau usang antarmuka pemrograman aplikasi server (SAPIs) dan ekstensi telah dihapus dari inti PHP, terutama ekstensi warisan mysql
Perilaku operator daftar () diubah untuk menghapus dukungan untuk string
Dukungan untuk warisan ASP-gaya pembatas kode PHP (<% dan%>, <script language = php> dan </ script>) telah dihapus
Pengawasan memungkinkan pernyataan switch untuk memiliki beberapa klausul standar tetap
Dukungan untuk dukungan sejumlah heksadesimal dalam beberapa konversi implisit dari string untuk jenis nomor dihapus
Kiri-shift dan kanan-shift operator berubah berperilaku lebih konsisten di seluruh platform
Konversi antara bilangan bulat dan angka floating point diperketat dan dilaksanakan secara lebih konsisten di seluruh platform PHP 7 juga termasuk fitur bahasa baru. Terutama, memperkenalkan tipe kembali deklarasi untuk fungsi, yang melengkapi deklarasi jenis parameter yang ada, dan dukungan untuk jenis skalar (bilangan bulat, float, string, dan boolean) dalam parameter dan kembali deklarasi tipe.
Semoga Bermanfaat ..