PHP, özellikle web geliştirme için uygun olan ve HTML’ye gömülebilen, yaygın olarak kullanılan açık kaynaklı bir betik dilidir.
PHP ne için kullanılır?
PHP dili bilinen web sitelerinin %78’inde PHP kullanılmaktadır. Genellikle web sayfası içeriğini dinamik olarak oluşturmak için web sitelerinde kullanılır. Kullanım durumları şunları içerir:
- Web siteleri ve web uygulamaları (sunucu tarafı komut dosyası oluşturma)
- Komut satırı komut dosyası
- Masaüstü (GUI) uygulamaları
Tipik olarak, dinamik olarak web sayfası içeriği oluşturmak için ilk formda kullanılır. Örneğin, bir blog web siteniz varsa, blog yazılarınızı bir veritabanından almak ve görüntülemek için bazı PHP komut dosyaları yazabilirsiniz. PHP komut dosyalarının diğer kullanımları şunları içerir:
- Form verilerinden kullanıcı girdisini işleme ve kaydetme
- Web sitesi tanımlama bilgilerini ayarlama ve bunlarla çalışma
- Web sitenizin belirli sayfalarına erişimi kısıtlamak
PHP nasıl çalışır?
Tüm PHP kodları, yerel bilgisayarınızda değil, yalnızca bir web sunucusunda yürütülür. Örneğin, bir web sitesinde bir form doldurup gönderirseniz veya PHP ile yazılmış bir web sayfasının bağlantısını tıklarsanız, bilgisayarınızda gerçek bir PHP kodu çalışmaz. Bunun yerine, web sayfası için form verileri veya istek, PHP betikleri tarafından işlenmek üzere bir web sunucusuna gönderilir. Web sunucusu daha sonra işlenen HTML’yi size geri gönderir ve web tarayıcınız sonuçları görüntüler. Bu nedenle, bir web sitesinin PHP kodunu göremezsiniz, yalnızca PHP betiklerinin ürettiği HTML kodunu görebilirsiniz.
Bu, aşağıda gösterilmiştir:
PHP yorumlanan bir dildir. Bu, kaynak kodunuzda değişiklik yaptığınızda, önce kaynak kodunuzu ikili biçimde derlemenize gerek kalmadan bu değişiklikleri hemen test edebileceğiniz anlamına gelir. Derleme adımının atlanması, geliştirme sürecini çok daha hızlı hale getirir.
PHP kodu <?php ve ?> etiketleri arasına alınır ve daha sonra HTML’ye gömülebilir.
PHP Örnekleri
Bu sayfadaki örnekler PHP temel söz diziminden başlayıp Form işlemlerine kadar bir çok PHP yapısını kapsamaktadır. Sitemizde bulunan Diğer PHP Örnekleri için buradaki bağlantıya bakabilirsiniz. Ayrıca adım adım dersler için de sitemizde bulunan PHP Dersleri konusunu incelemenizi tavsiye ederim.
PHP Temel İşlemler
PHP betikleri bir belgede herhangi bir yere yerleştirilebilir ve her zaman <?php ile başlar ve ?> biter. Ayrıca PHP ifadeleri noktalı virgül (;) ile biter.
“En İyi PHP Örnekleri” metnini sayfaya çıkarmak için yerleşik echo işlevini kullanan basit bir komut dosyası:
1 2 3 4 5 6 7 8 9 10 11 12 | <!DOCTYPE html> <html> <body> <h1>Tasarım Kodlama</h1> <?php echo "En İyi PHP Örnekleri"; ?> </body> </html> |
Çıktı:

PHP Yorum
PHP ile yorum yapmanın birkaç yolunu destekler:
- Tek satırlık yorumlar:
- Çok satırlı yorumlar:
1 2 3 4 5 6 7 | <?php // Tek satırlık yorum # Bu da tek satırlık yorum ?> |
1 2 3 4 5 6 7 8 9 | <?php /* Bu çok satırlı yorum bu satır da yorum içinde bu satır da... */ ?> |
Büyük küçük harf duyarlılığı
Tüm anahtar sözcükler, sınıflar ve fonksiyonlar büyük/küçük harfe duyarlı DEĞİLDİR.
Aşağıdaki örnekte, üç yankı ifadesinin tümü geçerlidir:
1 2 3 4 5 6 7 | <?php ECHO "Merhaba!<br>"; echo "Tasarım Kodlama<br>"; EcHo "PHP Örnekleri<br>"; ?> |
Ancak, tüm değişken adları büyük/küçük harfe duyarlıdır. Aşağıdaki örnekte, yalnızca ilk ifade geçerlidir ve $isim değişkeninin değerini gösterecektir. $ISIM ve $isIM farklı değişkenler olarak değerlendirilir:
1 2 3 4 5 6 7 8 | <?php isim = "Hayri"; echo "Benim adım: " . isim . "<br>"; echo "Benim adım: " . IsIm . "<br>"; #hata echo "Benim adım: " . isIM . "<br>"; #hata ?> |
PHP Değişkenler
Değişkenler, bilgileri bir PHP programında saklamanın ana yoludur.
PHP’deki tüm değişkenler, $değişken_adı gibi önde gelen bir dolar işaretiyle başlar. Bir değişken atamak için, değişkenin adı solda ve değerlendirilecek ifade sağda olacak şekilde = operatörünü kullanın.
Örnek:
1 2 3 4 5 6 7 8 9 10 | <?php // Merhaba değeri $selam değişkenine atandı $selam = "Merhaba!"; // 8 değeri $ay değişkenine atandı $ay = 8; // 2019 değeri $yil değişkenine atandı $yil = 2019; ?> |
Değişkenler ile ilgili daha detaylı bilgi için PHP Değişkenler konusunu inceleyiniz.
Önceden Tanımlanmış Değişkenler
PHP, “geçerli” değişken adları olmalarına rağmen değişkenleriniz için kullanılamayacak birkaç özel anahtar kelimeye sahiptir. Bunun nedeni, dilin bu değişkenleri zaten tanımlamış olması ve özel amaçlar için kullanılmasıdır. Aşağıda birkaç örnek listelenmiştir, tam bir liste için PHP dokümantasyon sitesine bakın.
$this
$_GET
$_POST
$_SERVER
$_FILES
PHP Veri Türleri
Değişkenler, aşağıdakiler gibi farklı türlerdeki verileri depolayabilir:
- String (“Merhaba”)
- Integer (5)
- Float (ondalık olabilir) (1.0)
- Boolean ( 1 yada 0 )
- Array ( array(“Ben”, “bir”, “Üniversite”, “Öğrencisiyim”) )
- Object
- NULL
- Resource
String
Bir dize, bir karakter dizisidir. Tırnak içindeki herhangi bir metin olabilir (tekli veya çift):
1 2 3 4 | $a = "Merhaba!"; $b = 'Merhaba!'; |
Integer
Tamsayı veri türü, -2.147.483.648 ile 2.147.483.647 arasında ondalık olmayan bir sayıdır.
Tamsayılar için kurallar:
- Tam sayılar en az bir basamak içermelidir
- Tam sayıların ondalık noktası olmamalıdır
- Tam sayılar pozitif veya negatif olabilir
$x = 5;
Float
Ondalık veya kayan noktalı sayı, ondalık noktalı bir sayıdır.
$x = 5.01;
Boolean
Boolean iki olası durumu temsil eder: TRUE veya FALSE. Boolean değerleri genellikle koşullu testlerde kullanılır.
1 2 3 4 | $x = true; $y = false; |
Array
Bir dizi, birden çok değeri tek bir değişkende saklar.
$renkler = array("Sarı", "Kırmızı", "Siyah");
NULL
Null, yalnızca null değerine sahip olabilen özel bir veri türüdür. Değişkenler değersiz olarak bildirilebilir veya değeri null olarak ayarlanarak boşaltılabilir. Ayrıca, bir değişkene değer atanmadan oluşturulursa, otomatik olarak null atanır.
1 2 3 4 5 6 7 8 9 | <?php // atama $selam = "Merhaba!"; // değeri null yapma $selam = null; ?> |
Class ve Object (Sınıf ve Nesne)
Sınıf, gerçek dünyadaki nesneleri modellemek için yararlı bir veri yapısıdır ve özellikler ve yöntemler içerebilir. Nesneler bir sınıf örnekleridir ve bir sınıfa özgü değerleri ve işlevleri paketlemenin uygun bir yoludur.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <?php // Sınıf Oluşturma class Araba { public $model; function Araba() { $this->model = "Şahin"; } } // Nesne Oluşturma $arac1 = new Araba(); // Nesne Özelliğini Yazdırma echo $arac1->model; ?> |
Resource
Kaynak(resource), harici bir kaynağa referans tutan özel bir değişkendir. Kaynaklar özel işlevler tarafından oluşturulur ve kullanılır. Kaynak türünü görmek için getresourcetype() işlevini kullanabilirsiniz.
1 2 3 4 5 6 7 8 9 10 11 12 | <?php // stream $fp = fopen("foo", "w"); echo get_resource_type($fp) . "\n"; // domxml document $doc = new_xmldoc("1.0"); echo get_resource_type($doc->doc) . "\n"; ?> |
String
String(Dize), karakter dizisidir. Bunlar, uygulamanızda herhangi bir metinsel bilgiyi saklamak için kullanılabilir.
PHP’de dize oluşturmanın birkaç farklı yolu vardır.
Tek Tırnak
Tek tırnaklar kullanılarak basit dizeler oluşturulabilir.
1 2 3 | $isim = 'Hayri'; |
Dizeye tek bir alıntı eklemek için, escape kaçış karakteri kullanılır.
1 2 3 | $metin = 'Hayri\'nin Kalemi'; |
Çift Tırnak
Çift tırnak kullanarak da dizeler oluşturabilirsiniz.
1 2 3 | $isim = "Hayri"; |
Çift tırnak metin içinde çift tırnak işaretini kullanmak için escape kaçış karakteri ile aşağıdaki gibi kullanılabilir.
1 2 3 | $metin = "Hayri\"nin Kalemi"; |
PHP değişkenlerini, değerlerinin dizeye eklenmesi için çift tırnak içine alınmış dizelere de gömebilirsiniz.
1 2 3 4 5 6 7 8 9 | <?php $isim = "Hayri"; echo "Merhaba $isim"; ?> |
String Fonksiyonları
String Uzunluğunu Bulma
strlen()
fonksiyonu verilen stringin uzunluğunu döndürür.
1 2 3 4 5 | $isim = "Hayri"; echo strlen($isim); |
Ancak içerisinde Türkçe karakterler de geçen dizleriniz varsa strlen()
yerine mb_strlen()
fonksiyonunu kullanın.
1 2 3 4 5 | $isim = "Ömer"; echo mb_strlen($isim); |
Bir Dizedeki Kelime Sayısını Bulma
str_word_count()
fonksiyonu bir PHP dizesindeki kelime sayısını döndürür.
1 2 3 4 5 | $metin = "Merhaba ben Web Geliştiricisiyim"; echo str_word_count($metin); |
Dize İçinde Metin Arama
mb_strpos()
fonksiyonu dize içindeki metnin kaçıncı sıradan başladığını gösterir.
1 2 3 4 5 | $metin = "Merhaba ben Web Geliştiricisiyim"; echo mb_strpos($metin,'Web'); |
Bir Dize İçindeki Metni Değiştirme
str_replace()
fonksiyonu string içindeki metni değiştirmek için kullanılır.
1 2 3 4 5 | $metin = "Merhaba ben Web Geliştiricisiyim"; echo str_replace('Web','Yazılım',$metin); |
İlginizi Çekebilir: PHP’de Sık Kullanılan Yerleşik İşlevler
PHP Sabit
Sabitler, PHP’deki bir değişken türüdür. Bir sabit ayarlamak için define() işlevi üç bağımsız değişken alır – anahtar adı, anahtarın değeri ve anahtar adının büyük/küçük harfe duyarlı olup olmadığını (varsayılan olarak false) belirleyen bir Boolean (true veya false). Bir sabitin değeri ayarlandıktan sonra değiştirilemez. Nadiren değişen değerler için kullanılır (örneğin bir veritabanı parolası VEYA API anahtarı).
Kapsam
Değişkenlerin aksine, sabitlerin HER ZAMAN global bir kapsamı olduğunu ve komut dosyasındaki herhangi bir işlevden erişilebilir olduğunu bilmek önemlidir.
1 2 3 4 5 6 7 8 | <?php define('SITE_AD','https://www.tasarimkodlama.com'); echo SITE_AD; ?> |
Ayrıca sınıfları oluştururken kendi sabitlerinizi bildirebilirsiniz.
1 2 3 4 5 6 7 | class Canli{ const TUR = "INSAN"; const YASIYORMU = true; .... } |
Not: Bu sabitleri Canli sınıfı içinde kullanmak istiyorsanız, onlara self::YASIYORMU
olarak başvurabilirsiniz. Bunları sınıfın dışında kullanmak istiyorsanız, Canli::YASIRYORMU
olarak adlandırmanız gerekir.
Operatör
PHP, bir programlama dilinde bulunması beklenen tüm normal operatörleri içerir.
Atama operatörü olarak tek bir “=” ve karşılaştırma için çift “==” veya üçlü “===” kullanılır.
Her zamanki “<” ve “>” aynı zamanda karşılaştırma için ve “+=” bir değer eklemek ve aynı anda atamak için kullanılabilir.
En dikkat çekici olanı “.” dizeleri birleştirmek için “.=” ve bir dizeyi diğerinin sonuna eklemek için.
PHP 7.0.X’te yeni olan Spaceship operatörüdür (<=>). $a, $b’den küçük, ona eşit veya ondan büyük olduğunda uzay gemisi operatörü -1, 0 veya 1 döndürür.
1 2 3 4 5 6 7 | <?php echo 1 <=> 1; // 0 echo 1 <=> 2; // -1 echo 2 <=> 1; // 1 |
If / Else / Elseif İfadesi
If / Else, bir koşulun doğruluğuna bağlı olarak farklı eylemlerin gerçekleştirileceği koşullu bir ifade ise.
Not: {} parantezleri yalnızca koşulun birden fazla eylem ifadesi varsa gereklidir; ancak, bunları ne olursa olsun dahil etmek en iyi uygulamadır.
Bakınız: PHP if else Kullanımı
If Kullanımı
1 2 3 4 5 6 7 8 9 | <?php $sayi = 25; if ($sayi > 0) { echo "$sayi sayısı pozitif sayıdır."; } |
If/Else Kullanımı
1 2 3 4 5 6 7 8 9 10 11 | <?php $sayi = -25; if ($sayi > 0) { echo "$sayi sayısı pozitif sayıdır."; }else{ echo "$sayi sayısı pozitif sayı değildir."; } |
If/Elseif/Else Kullanımı
1 2 3 4 5 6 7 8 9 10 11 12 13 | <?php $sayi = 0; if ($sayi > 0) { echo "$sayi sayısı pozitif sayıdır."; }elseif($sayi ==0){ echo "$sayi sayısı SIFIRdır."; }else{ echo "$sayi sayısı negatif sayıdır."; } |
İç İçe If/Else Kullanımı
Yukarıdaki bütün ifadelerin içinde if/else ifadelerini iç içe kullanabilirsiniz. Aşağıdaki basit örnek if else ifadesini iç içe kullanmak için oluşturulmuş basit bir örnektir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <?php $sayi = 0; if ($sayi > 0) { echo "$sayi sayısı pozitif sayıdır."; }else{ if($sayi ==0){ echo "$sayi sayısı SIFIRdır."; }else{ echo "$sayi sayısı negatif sayıdır."; } } |
Çoklu Koşullar
“or” (||), “xor”, ve “and” (&&) mantıksal işleçleriyle aynı anda birden çok koşul kullanılabilir.
Örneğin:
1 2 3 4 5 6 7 8 9 10 11 | <?php $sayi = 18; if ($sayi1 % 3 == 0 or $sayi1 % 5 == 0) { echo "$sayi üçe yada 5 tam olarak bölünüyor."; }elseif($sayi1 % 5 == 0 && $sayi1 % 4 == 0{ echo "$sayi sayısı 20nin katı bir sayıdır."; } |
Alternatif if/Else Sözdizimi
Kontrol yapıları için alternatif bir sözdizimi de vardır.
1 2 3 4 5 6 7 | if (sart): ifade1; else: ifade2; endif; |
Üçlü Operatörler(Ternary Operator)
Üçlü operatörler temelde tek satır if / else ifadeleridir.
Bir kullanıcı oturum açmışsa “Merhaba (kullanıcı adı)” ve oturum açmamışsa “Merhaba misafir” göstermeniz gerektiğini varsayalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php $mesaj = 'Merhaba '.($user == !NULL ? $user : 'Ziyaretçi'); /* if($user == !NULL { $mesaj = 'Merhaba '. $user; } else { $mesaj = 'Merhaba Ziyaretçi'; } */ |
Switch Kullanımı
PHP’de Switch deyimi JavaScript Switch deyimine çok benzer. Birçok farklı olası koşulla hızlı case testine izin verir, kod ayrıca daha okunabilirdir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <?php // Switch Örneği switch ($i) { case "PHP": echo "Web geliştiricisi"; break; case "C#": echo "Masaüstü uygulama geliştiricisi"; break; case "Java": echo "Mobil uygulama geliştiricisi"; break; default: echo "Her hangi bir dil tespit edilemedi"; break; } |
Break
break; ifade anahtardan çıkar ve uygulamanın geri kalanını çalıştırmaya devam eder. Break kullanmazsanız;Switch sonuna kadar case kontrol etmeye devam eder. Bazen bu istenebilir, bu durumda break eklememelisiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | <?php $sayi = 5; switch ($sayi) { case 1: echo "Bir"; break; case 2: echo "İki"; break; case 3: case 4: case 5: echo "Üç, Dört yada Beş"; break; case 6: echo "Altı"; break; case 7: echo "Yedi"; break; case 8: echo "Sekiz"; break; case 9: case 0; echo "Dokuz yada Sıfır"; break; default: echo "Bilinmiyor"; break; } |
Döngüler
Bir görevi birden çok kez tekrarlamanız gerektiğinde, aynı kodu tekrar tekrar yazmak yerine bir döngü kullanabilirsiniz.
Döngü içinde bir break kullanmak döngü yürütmesini durdurabilir.
for Döngüsü
Basit bir for döngüsü oluşturun.(Bakınız: PHP for döngüsü kullanımı)
1 2 3 4 5 6 7 8 | <?php for($i = 0; $i < 5; $i++) { echo "Sıra:".$i.".<br>"; } ?> |
Çıktı:
1 2 3 4 5 6 7 | Sıra:0. Sıra:1. Sıra:2. Sıra:3. Sıra:4. |
while Döngüsü
Basit bir while döngüsü oluşturun.(Bakınız: PHP while döngüsü örnekleri)
1 2 3 4 5 6 7 8 9 10 | <?php $sira = 10; while ($sira >= 0) { echo "Sıra ".$sira."<br>"; $sira--; } ?> |
Çıktı:
1 2 3 4 5 6 7 8 9 10 11 12 13 | Sıra 10 Sıra 9 Sıra 8 Sıra 7 Sıra 6 Sıra 5 Sıra 4 Sıra 3 Sıra 2 Sıra 1 Sıra 0 |
do…while döngüsü
Bir kod bloğunda bir kez dolaşın ve koşul doğruysa döngüye devam edin.
1 2 3 4 5 6 7 8 9 10 11 12 | <?php $sira = 3; do { // döngü en az bir kez çalışır echo "Sıra: ".$sira."<br>"; $sira --; } while ($sira > 0); ?> |
Çıktı:
1 2 3 4 5 | Sıra: 3 Sıra: 2 Sıra: 1 |
foreach Döngüsü
Bir dizi içindeki her değer için bir kod bloğunda dolaşın(Bakınız: PHP foreach kullanımı).
1 2 3 4 5 6 7 8 9 | <?php $renkler = array("kırmızı", "yeşil", "mavi", "sarı"); foreach ($renkler as $renk) { echo "$renk <br>"; } ?> |
Çıktı:
1 2 3 4 5 6 | kırmızı yeşil mavi sarı |
Fonksiyonlar
Fonksiyon, bir programda tekrar tekrar kullanılabilen bir ifade bloğudur. (Bakınız: PHP Kullanıcı Tanımlı Fonksiyonlar)
Fonksiyon tanımlama ve çağırma
1 2 3 4 5 6 7 8 9 | <?php function selamla() { return "Merhaba PHP"; } echo selamla(); ?> |
Çıktı:
1 2 3 | Merhaba PHP |
Yorum Yap