Konten dihapus Konten ditambahkan
Kenrick95Bot (bicara | kontrib)
k Bot: Penggantian teks otomatis (-di akhiri +diakhiri)
Katyusha 97 (bicara | kontrib)
Program bilangan Fibonacci: Penyempurnaan kosakata
Tag: Suntingan perangkat seluler Suntingan peramban seluler
 
(166 revisi perantara oleh 93 pengguna tidak ditampilkan)
Baris 1:
{{Infobox programming language
| name = ''PHP: Hypertext Preprocessor''
| logo = [[Berkas:PHP Logo-logo.png|180px|PHP]]svg
| caption =
| file ext = .php, .phar, .phtml, .php4pht, .php3, .php4, .php5, .php7, .phps, .php-s
| paradigm = imperatif, [[pemrograman berorientasi objek|berorientasi objek]], prosedural, reflektif
| released = {{start date and age|1995|06|08}}<ref name="mysqlconference">{{cite web|last=Lerdorf | first=Rasmus | title=PHP on Hormones&nbsp;– history of PHP presentation by Rasmus Lerdorf given at the MySQL Conference in Santa Clara, California | date=2007-04-26 | access-date=10 Februari 2024 | publisher=The Conversations Network | url=http://itc.conversationsnetwork.org/shows/detail3298.html}}</ref>
| released = {{Start date|1995}}<ref name = "mysqlconference" />
| designer = [[Rasmus Lerdorf]]
| developer = The PHP Development =Team, [[The PHPZend GroupTechnologies]]
| latest release version = 58.63.4<ref>{{cite web |url=https://www.php.net/archive/20142024.php#id20142024-1203-1814-2 |section=PHP 5.6.4 is available |title=Newsarchive Archive - 2014 |date=2014-12-18 |accessdate=2014-12-19Releases 2024|website=php.net}}</ref>
| latest release date = {{start date and age|20142024|1203|1814}}
| typing = [[Penulisan dinamis|Dinamis]], [[Mengetik kuat dan lemah|lemah]]
| latest preview version = 5.6.1RC1<ref>{{cite web|title=Welcome to the PHP Quality Assurance Team Web Page.|url=https://qa.php.net/|website=PHP: Quality Assurance|publisher=[[The PHP Group]]|accessdate=21 September 2014}}</ref>
'''sejak versi 7.0:'''
[[dinamis|Dynamic]], [[lemah|weak]]
[[Mengetik bertahap|bertahap]]<ref>{{cite web|url=https://secure.php.net/manual/en/functions.arguments.php#functions.arguments.type-declaration.strict|title=PHP: Function arguments - Manual|website=secure.php.net}}</ref>
| implementations = [[Zend Engine]], [[HHVM]], [[Phalanger (compilerkompilator)|Phalanger]], [[Quercus (software)|Quercus]], [[Project Zero]], [[Parrot virtual machine|Parrot]]
| dialects = =
| influenced = [[Hack (programming language)|Hack]]
| influenced by = [[Perl]], [[HTML]], [[C (bahasa pemrograman)|C]], [[C++]], [[Java (bahasa pemrograman)|Java]], [[Tcl]],<ref name="mysqlconference" /> [[JavaScript]], [[Hack (programming language)|Hack]]<ref name="optimisation ideas">{{cite web | url = https://twitter.com/dstogov/status/672864802474229760 | title = It's not a secret that some #PHP7 optimization ideas came from HHVM, LuaJIT and V8.| last = Stogov | first = Dmitry | publisher = Twitter | date = 2015-12-04}}</ref>
| programming language = [[C (bahasa pemrograman)|C]]
| influenced = [[Hack (bahasa pemrograman)|Hack]], [[JSP]], [[Active Server Pages|ASP]]
| operating system = [[Cross-platform]] ([[Unix-like]] systems, [[Windows]], other 32-bit and 64-bit platforms)
| programming language = [[C (bahasa pemrograman)|C]] (utama; beberapa komponen [[C++]])
| license = [[PHP License]] (most of Zend engine under [[Zend Engine License]])
| operating system = [[Cross-Lintas platform]] (sistem [[mirip Unix-like]] systems, [[Windows]], otherplatform 32-bit anddan 64-bit platformslain), [[IBM i]], [[OpenVMS]]
| website = [http://www.php.net/ www.php.net]
| license = [[Lisensi PHP]] (sebagian besar mesin Zend di bawah [[lisensi Zend Engine]])
}}
| website = [httphttps://www.php.net/ www.php.net]
'''''PHP: Hypertext Preprocessor'''''<ref name="faq.general.acronym">[http://id2.php.net/manual/en/faq.general.php#faq.general.acronym What does PHP stand for?]</ref> adalah [[bahasa skrip]] yang dapat ditanamkan atau disisipkan ke dalam [[HTML]].<ref name="faq.general.what">[http://id2.php.net/manual/en/faq.general.php#faq.general.what What is PHP?]</ref><ref name="php_preface">[http://id2.php.net/manual/en/preface.php PHP: Preface Manual]</ref> PHP banyak dipakai untuk memrogram [[situs web]] dinamis. PHP dapat digunakan untuk membangun sebuah [[CMS]].
}}
'''''PHP: Hypertext Preprocessor'''''<ref name="faq.general.acronym">{{Cite web |url=http://id2.php.net/manual/en/faq.general.php#faq.general.acronym |title=What does PHP stand for? |access-date=10 Februari 2024 |archive-date=2011-08-11 |archive-url=https://web.archive.org/web/20110811041315/http://id2.php.net/manual/en/faq.general.php#faq.general.acronym |dead-url=yes }}</ref> (sebelumnya disebut ''Personal Home Pages)'' atau hanya '''PHP''' saja, adalah bahasa skrip dengan fungsi umum yang terutama digunakan untuk [[pengembangan web]].<ref>{{Cite web|url=https://www.php.net/|title=PHP: Hypertext Preprocessor|website=www.php.net|access-date=10 Februari 2024}}</ref> Bahasa ini awalnya dibuat oleh seorang pemrogram Denmark-Kanada [[Rasmus Lerdorf]] pada tahun 1994.<ref name="History of PHP">{{cite web|title=History of PHP|url=https://php.net/manual/en/history.php.php|website=php.net}}</ref> Implementasi referensi PHP sekarang diproduksi oleh The PHP Group.<ref name="about PHP">{{cite web|access-date=10 Februari 2024|url=https://www.php.net/history|title=History of PHP and related projects |publisher=The PHP Group}}</ref> PHP awalnya merupakan singkatan dari '''''Personal Home Page''''',<ref name="History of PHP" /> tetapi sekarang merupakan singkatan dari inisialisasi rekursif '''''PHP: Hypertext Preprocessor'''''.<ref>[https://php.net/manual/en/preface.php PHP Manual: Preface], www.php.net.</ref>
 
Kode PHP biasanya diproses di [[peladen web]] oleh [[interpreter]] PHP yang diimplementasikan sebagai [[Plugin|modul]], [[daemon]], atau sebagai ''[[Common Gateway Interface]]'' (CGI) yang bisa dijalankan. Di server web, hasil dari kode PHP yang ditafsirkan dan dieksekusi (dapat berupa semua jenis data, seperti [[HTML]] atau data gambar [[biner]]) akan membentuk keseluruhan atau sebagian dari respons [[HTTP]]. Berbagai [[sistem templat web]], [[sistem manajemen konten]] web, dan [[Kerangka kerja aplikasi web|kerangka kerja web]] ada yang dapat digunakan untuk mengatur atau memfasilitasi pembuatan respons itu. Selain itu, PHP dapat digunakan untuk banyak tugas pemrograman di luar konteks web, seperti [[Antarmuka pengguna grafis|aplikasi grafis]] mandiri<ref>{{cite web | url = https://php.net/manual/en/intro-whatcando.php | work = PHP Manual | title = Introduction: What can PHP do? | access-date = 10 Februari 2024}}</ref> dan kontrol [[Pesawat nirawak|drone]] robotik.<ref>{{Citation|title=helicopter: Port of node-ar-drone which allows user to control a Parrot AR Drone over PHP: jolicode/php-ar-drone|date=2019-01-11|url=https://github.com/jolicode/php-ar-drone|publisher=JoliCode|access-date=10 Februari 2024}}</ref> Kode PHP juga dapat langsung dieksekusi dari [[baris perintah]].
 
== Sejarah PHP ==
{{multiple image
Pada awalnya PHP merupakan kependekan dari ''Personal Home Page'' (Situs personal). PHP pertama kali dibuat oleh [[Rasmus Lerdorf]] pada tahun [[1995]]. Pada waktu itu PHP masih bernama ''Form Interpreted'' (FI), yang wujudnya berupa sekumpulan skrip yang digunakan untuk mengolah data formulir dari [[web]].
| align = right
| width = 105
| image1 = Rasmus Lerdorf cropped.jpg
| image2 = Andi Gutmans 1.jpg
| image3 = Zeev Suraski 2005 cropped.jpg
| footer = [[Rasmus Lerdorf]], pembuat dari PHP; dan [[Andi Gutmans]] dan [[Zeev Suraski]], pembuat dari [[Zend Engine]]
}}
PHP pertama kali dikembangkan oleh [[Rasmus Lerdorf]] pada tahun 1994. Pada awalnya PHP merupakan kependekan dari ''Personal Home Page'' (Situs personal). PHP pertama kali dibuat oleh [[Rasmus Lerdorf]] pada tahun [[1995]]. Pada waktu itu PHP masih bernama ''Form Interpreted'' (FI), yang wujudnya berupa sekumpulan skrip yang digunakan untuk mengolah data formulir dari [[web]].
 
Selanjutnya Rasmus merilis kode sumber tersebut untuk umum dan menamakannya [[PHP/FI]]. Dengan perilisan kode sumber ini menjadi [[sumber terbuka]], maka banyak [[pemrogram]] yang tertarik untuk ikut mengembangkan PHP.
 
Pada November 1997, dirilis PHP/FI 2.0. Pada rilisperilisan ini, ''[[interpreter]]'' PHP sudah diimplementasikan dalam program [[C]]. Dalam rilis ini disertakan juga modul-modul ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan.
 
Pada tahun 19971995, sebuah perusahaan bernama [[Zend]] menulis ulang interpreter PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Kemudian pada Juni 19981995, perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan rilis tersebut sebagai [[PHP 3.0]] dan singkatan PHP diubah menjadi [[akronim berulang]] ''PHP: Hypertext PreprocessingPreprocessor''.
 
Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis tersebut dikenal dengan [[PHP 4.0]]. PHP 4.0 adalah versi PHP yang paling banyak dipakai pada awal abad ke-21. Versi ini banyak dipakai disebabkan kemampuannya untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan dan stabilitas yang tinggi.
 
Pada [[Juni]] [[2004]], Zend merilis [[PHP 5.0]]. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan model [[pemrograman berorientasi objek]] ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigma berorientasi objek. Peladen web bawaan ditambahkan pada versi 5.4 untuk mempermudah pengembang menjalankan kode PHP tanpa menginstal peladen perangkat lunak.
 
Versi terbaru dan stabil dari bahasa pemograman PHP saat ini adalah versi 58.63.4<ref>{{Cite yangweb|title=PHP: resmiPHP dirilis pada8.3.0 tanggalRelease 18 [[Desember]] 2014Announcement|url=https://www.php.net/releases/8.3/en.php|website=php.net|language=en|access-date=2024-01-08}}</ref>
 
== Sintaksis Dasar ==
 
=== Pembatas ===
PHP hanya mengeksekusi kode yang ditulis dalam pembatas sebagaimana ditentukan oleh dasar sintaks PHP. Apapun di luar pembatas tidak diproses oleh PHP (meskipun teks PHP ini masih mengendalikan struktur yang dijelaskan dalam kode PHP. Pembatas yang paling umum adalah "'''<?php"''' untuk membuka dan "'''?>"''' Untuk menutup kode PHP. Tujuan dari pembatas ini adalah untuk memisahkan kode PHP dari kode di luar PHP, seperti [[HTML]], dan [[JavascriptJavaScript]].
 
=== Variabel ===
Variabel diawali dengan [[simbol]] [[dolar]] <code>$</code>. Pada versi php PHP 5 diperkenalkan jenis isyarat yang memungkinkan [[fungsi]] untuk memaksa mereka menjadi parameter [[objek]] dari class tertentu, array, atau fungsi. Namun, jenis petunjuk tidak dapat digunakan dengan jenis skalar seperti [[angka]] atau [[string]]. Contoh [[variabel]] dapat ditulis sebagai $nama_varabelnama_variabel.
 
Penulisan fungsi, penamaan kelas, nama variabel adalah peka akan huruf besar (Kapital) dan huruf kecil '''[[Kepekaan kapital|case sensitive]]'''. Kedua kutip ganda <code>""</code> dari string memberikan kemampuan untuk interpolasi nilai variabel ke dalam string PHP. PHP menerjemahkan [[baris]] sebagai [[spasi]], dan pernyataan harus diakhiri dengan titik koma <code>;</code>.
 
=== Komentar ===
PHP memiliki 3 jenis sintaks sebagai komentar pada kode yaitu tanda blok
* <code> / * * / #</code>, komentaruntuk 2satu baris komentar.
* <code>//</code> Sertauntuk tandadua pagarbaris komentar.
* <code>#/* komentar */</code> digunakan untuk komentarlebih satubanyak bariskomentar.<br>Komentar digunakan untuk Komentar bertujuan untuk meninggalkan catatan pada kode PHP dan tidak akan diterjemahkan ke program.
 
=== Fungsi ===
Ratusan fungsi yang disediakan oleh PHP serta ribuan lainnya yang tersedia melalui berbagai ekstensi tambahan. fungsiFungsi-fungsi ini didokumentasikan dalam dokumentasi PHP. Namun, dalam berbagai tingkat pengembangan, kini memiliki berbagai konvensi penamaan. SintaksSalah satu contoh sintaks fungsi sederhana adalah seperti di bawah ini:
<sourcesyntaxhighlight lang="php">
<?php
function tampilkan($data="") // Mendefenisikan fungsi, "tampilkan" adalah nama sebuah fungsi
// membuat fungsi
{ //Diapit oleh tanda kurung kurawal
function perkenalan($nama){
if($data) return $data; else return 'Tidak ada data'; // Melakukan proses pengolahan data, contohnya melalui kondisi
echo "Perkenalkan, nama saya "$nama";<br>
}
 
// memanggil fungsi yang sudah dibuat
echo tampilkan("isi halaman") // Menjalankan fungsi
perkenalan("Dinda");
</source>
 
?>
</syntaxhighlight>
Maka browser akan menampilkan kalimat '''Perkenalkan, nama saya Dinda.'''
 
== Contoh program ==
=== Membuat Sebuah Halaman Web PHP ===
Sebuah Halaman web yang ditulis menggunakan [[Bahasa skrip|Bahasa Pemograman]] PHP adalah sebagai berikut:
<sourcesyntaxhighlight lang="php">
<?php
echo "Halo dunia!";
?>
</syntaxhighlight>
</source>
 
=== Program bilangan Fibonacci ===
Berikut ini adalah contoh program yang relatif lebih kompleks yang ditulis dengan menggunakan PHP. Contoh program ini adalah program untuk menampilkan 20 bilangan pertama dari deret [[bilangan Fibonacci]].terdapat Terdapat beberapa variablevariabel atau sintax.sintaks, seperti function. ituItu merupakan bagian dari javascriptJavaScript.
<sourcesyntaxhighlight lang="php">
<?php
function fibonacci_seq( $panjang ) {
for( $l = array(0,1), $i = 2, $x = 0; $i < $panjang; $i++ ) {
$l[] = $l[$x++] + $l[$x];
}
return $l;
}
Baris 83 ⟶ 104:
// Angka "20" dapat diganti sesuai keinginan
?>
</syntaxhighlight>
</source>
 
=== '''Program Mengukur Panjang Karakter''' ===
Berikut adalah contoh program mengukur panjang karakter pada sebuah teks dapat menggunakan fungsi strlen() pada PHP.
<syntaxhighlight lang="php"><?php
$teks = 'John Doe';
echo strlen($teks); // 8
?>
</syntaxhighlight>
 
== Kelebihan PHP Dari Bahasa Pemrograman Lain ==
Beberapa kelebihan PHP dariuntuk bahasa pemrograman web, antara lain:
#* 'Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaannya.'
#* 'WebPeladen Serverweb yang mendukung PHP dapat ditemukan di mana - mana dari mulai apacheApache, Nginx, IIS, Lighttpd, hingga Xitami dengan konfigurasi yang relatif mudah.'
#* 'Dalam sisi pengembangan lebih mudah, karena banyaknya milis - milis dan developerpengembang yang siap membantu dalam pengembangan.'
#* 'Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling mudah karena memiliki referensi yang banyak.'
#* 'PHP adalah bahasa open sourcepemrograman yang dapat digunakan di berbagai mesinsistem operasi (LinuxWindows, Unix,Mac MacintoshOS, Windowsdan Linux) dan dapat dijalankan secara runtime melalui consolekonsol serta juga dapat menjalankan perintah-perintah systemsistem.'
 
== Tipe data ==
PHP memiliki 8 tipe data, yaitu:
#* ''Boolean''
#* ''Integer''
#* ''Float''/ ''Double''
#* ''String''
#* ''Array''
#* ''Object''
#* ''Resource''
#* ''NULL''
 
== ReferensiKerangka kerja PHP ==
PHP memiliki banyak framework atau kerangka kerja, yaitu :
{{Reflist}}
* [[SmartyLaravel]]
 
== Lihat pula ==
;Template Engine
* [[Smarty]]
 
;PHP Framework
PHP [[Framework]] adalah sebagai sebuah [[kerangka]] kerja yang disusun oleh berbagai [[komunitas]] [[pengembang web]] diseluruh [[dunia]]. Kerangka ini bertujuan untuk mempermudah dalam membuat sebuah [[aplikasi]] web kita sering menulis script PHP secara keseluruhan (konvensional) dan itu pun kita ulang pada halaman yang lain.
* [[CakePHP]]
* [[CodeIgniter]]
* [[PRADO]]
* [[Symfony]]
* [[Zend Framework]]
* [[Yii]]
* [[PHPDevShellCakePHP]]
* [[AkelosZend Framework]]
* [[QPHPPhalcon]]
* [[ZooPFuelPHP]]
 
== Lihat pula ==
* [[CakePHPPEAR]]
* [[PRADOXAMPP]]
* [[LAMP]]
 
== Referensi ==
{{Reflist}}
 
== Pranala luar ==
* [http{{Situs web resmi|https://www.php.net Situs resmi]}}
* [httphttps://www.php.net/ChangeLog-5docs.php Catatan peningkatan versiDokumentasi PHP dari masa kemasa]
* {{en}} [httphttps://www.zendphp.comnet/solutions/whyChangeLog-php7.php WhyCatatan choosepeningkatan versi PHP 7]
* {{GitHub|php/php-src}}
* {{en}} http://www.php5-tutorial.com/
* [http://www.w3schools.com/php/php_intro.asp PHP Introduction - w3schools]
*https://github.com/php
*http://www.codecademy.com/en/tracks/php
*http://staff.unipdu.ac.id/nufan/2013/04/20/pengenalan-php-hypertext-processor/
 
{{Daftar bahasa pemrograman}}
{{Authority control}}
 
[[Kategori:PHP| {{PAGENAME}}]]
[[Kategori:Bahasa pemrograman]]
[[Kategori:Perangkat lunak bebas]]
[[Kategori:Bahasa pemrograman prosedural]]
[[Kategori:Bahasa pemrograman berorientasi objek]]
[[Kategori:Istilah internet]]