PHP ile Web Tabanlı Uygulamalar
1. Giriş
PHP, web tabanlı uygulamalar geliştirmek için en yaygın kullanılan sunucu taraflı programlama dillerinden biridir. PHP'nin esnekliği, geniş kütüphane desteği ve kolay öğrenilebilirliği, onu hem yeni başlayanlar hem de profesyonel geliştiriciler için ideal bir tercih haline getirir. Bu yazıda, PHP ile web tabanlı uygulama geliştirme sürecinde kullanabileceğiniz temel ve ileri düzey konuları kapsayan örnek kodlara yer verilmiştir. Her bir kod bloğu detaylı açıklamalarla desteklenmiştir, böylece kodun nasıl çalıştığını ve hangi amaçlarla kullanılabileceğini kolayca anlayabilirsiniz.
2. Temel PHP Kodları
2.1. PHP ile Merhaba Dünya
Her programlama dilinde olduğu gibi, PHP'ye giriş yaparken ilk olarak "Merhaba Dünya" örneği ile başlamak en iyisidir. Aşağıdaki kod, PHP kullanarak ekrana "Merhaba Dünya" mesajını yazdırır:
<?php
// Bu kod ekrana "Merhaba Dünya!" mesajını yazdırır.
echo "Merhaba Dünya!";
?>
2.2. Değişkenler ve Veri Tipleri
PHP'de değişkenler, veri saklamak için kullanılır ve $ işareti ile tanımlanır. PHP, değişken tiplerini otomatik olarak belirler. Aşağıdaki örnek, farklı veri tiplerine sahip değişkenlerin nasıl tanımlandığını ve kullanıldığını gösterir:
<?php
// String veri tipi
$isim = "Ahmet";
// Integer veri tipi
$yas = 25;
// Boolean veri tipi
$bekar = true;
echo "İsim: " . $isim . "<br>";
echo "Yaş: " . $yas . "<br>";
echo "Bekar mı: " . ($bekar ? "Evet" : "Hayır");
?>
3. Kontrol Yapıları
Kontrol yapıları, programın akışını yönetmek için kullanılır. If-else ve switch-case yapıları, belirli koşullara göre farklı kod bloklarını çalıştırmak için kullanılır.
3.1. If-Else Yapısı
if-else yapısı, belirli bir koşulun doğru olup olmadığını kontrol eder ve buna göre farklı kod bloklarını çalıştırır. Aşağıdaki örnek, bir sayının pozitif, negatif veya sıfır olup olmadığını kontrol eder:
<?php
// Bir sayının pozitif, negatif veya sıfır olup olmadığını kontrol eder
$sayi = 10;
if ($sayi > 0) {
echo "Sayı pozitiftir.";
} elseif ($sayi < 0) {
echo "Sayı negatiftir.";
} else {
echo "Sayı sıfırdır.";
}
?>
3.2. Switch Case Yapısı
Switch-case yapısı, bir değişkenin değerine göre birden fazla olasılığı kontrol eder ve uygun olan kod bloğunu çalıştırır. Aşağıdaki örnek, gün adına göre farklı mesajlar yazdırır:
<?php
// Gün adına göre farklı mesajlar yazdırır
$gun = "Pazartesi";
switch ($gun) {
case "Pazartesi":
echo "Bugün Pazartesi.";
break;
case "Salı":
echo "Bugün Salı.";
break;
default:
echo "Bilinmeyen gün.";
break;
}
?>
4. Döngüler
Döngüler, belirli bir kod bloğunu birden fazla kez çalıştırmak için kullanılır. PHP'de for, while ve foreach gibi farklı döngü yapıları bulunmaktadır.
4.1. For Döngüsü
For döngüsü, belirli bir sayı kadar kod bloğunu çalıştırmak için kullanılır. Aşağıdaki örnek, 0'dan 9'a kadar olan sayıları ekrana yazdırır:
<?php
// 0'dan 9'a kadar olan sayıları yazdırır
for ($i = 0; $i < 10; $i++) {
echo $i . "<br>";
}
?>
4.2. While Döngüsü
While döngüsü, belirli bir koşul doğru olduğu sürece kod bloğunu tekrarlar. Aşağıdaki örnek, 0'dan 9'a kadar olan sayıları ekrana yazdırır:
<?php
// 0'dan 9'a kadar olan sayıları yazdırır
$i = 0;
while ($i < 10) {
echo $i . "<br>";
$i++;
}
?>
4.3. Foreach Döngüsü
Foreach döngüsü, bir dizi veya koleksiyonun her bir elemanını dolaşmak için kullanılır. Aşağıdaki örnek, bir meyve dizisinin elemanlarını ekrana yazdırır:
<?php
// Bir dizi elemanlarını yazdırır
$dizi = array("Elma", "Armut", "Muz");
foreach ($dizi as $meyve) {
echo $meyve . "<br>";
}
?>
5. Fonksiyonlar
Fonksiyonlar, belirli bir işlemi gerçekleştiren kod bloklarıdır. Kodun yeniden kullanılabilirliğini artırır ve programın daha düzenli olmasını sağlar.
5.1. Basit Fonksiyon
Basit bir fonksiyon, belirli bir işlemi gerçekleştirir ve gerekirse bir değer döner. Aşağıdaki örnek, "Merhaba" mesajını ekrana yazdıran bir fonksiyonu tanımlar ve çağırır:
<?php
// Basit bir fonksiyon tanımlar ve çağırır
function selamVer() {
echo "Merhaba!";
}
selamVer();
?>
5.2. Parametreli Fonksiyon
Parametreli fonksiyonlar, belirli giriş değerlerine göre işlem yapar. Aşağıdaki örnek, bir ismi parametre olarak alıp selamlayan bir fonksiyonu tanımlar ve çağırır:
<?php
// Bir ismi parametre olarak alıp selamlayan bir fonksiyon tanımlar ve çağırır
function selamla($isim) {
echo "Merhaba, " . $isim . "!";
}
selamla("Ahmet");
?>
6. Diziler
Diziler, birden fazla değeri tek bir değişkende saklamayı sağlar. PHP'de indeksli diziler ve anahtar-değer (associative) diziler olmak üzere iki tür dizi bulunur.
6.1. Dizi Tanımlama
İndeksli diziler, elemanların indeks numaralarına göre erişildiği dizilerdir. Aşağıdaki örnek, bir meyve dizisini tanımlar ve ilk elemanını ekrana yazdırır:
<?php
// Bir meyve dizisini tanımlar ve ilk elemanını ekrana yazdırır
$meyveler = array("Elma", "Armut", "Muz");
echo $meyveler[0]; // Elma
?>
6.2. Associative Array (Anahtar-Değer Dizisi)
Anahtar-değer dizileri, elemanların anahtarlarına göre erişildiği dizilerdir. Aşağıdaki örnek, kişilerin isimlerini ve yaşlarını saklayan bir anahtar-değer dizisini tanımlar ve Ayşe'nin yaşını ekrana yazdırır:
<?php
// Kişilerin isimlerini ve yaşlarını saklayan bir anahtar-değer dizisini tanımlar ve Ayşe'nin yaşını ekrana yazdırır
$kisiler = array(
"Ahmet" => 25,
"Ayşe" => 22,
"Mehmet" => 30
);
echo $kisiler["Ayşe"]; // 22
?>
7. Form İşleme
Formlar, kullanıcıdan veri almak için kullanılır ve PHP ile bu verileri işleyebilirsiniz. Aşağıdaki örnekler, basit bir formun nasıl oluşturulacağını ve gönderilen verilerin nasıl işleneceğini gösterir.
7.1. Basit Form
Bu örnek, kullanıcının bir isim girmesi ve göndermesi için basit bir form oluşturur:
<!-- Basit bir form oluşturur -->
<form method="post" action="islem.php">
İsim: <input type="text" name="isim">
<input type="submit" value="Gönder">
</form>
7.2. Form Verilerini Alma
Bu örnek, gönderilen form verilerini alır ve ekrana yazdırır:
<?php
// Gönderilen form verilerini alır ve ekrana yazdırır
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$isim = htmlspecialchars($_POST["isim"]);
echo "Merhaba, " . $isim;
}
?>
8. Veritabanı İşlemleri
PHP, MySQL gibi veritabanları ile kolayca etkileşime geçebilir. Aşağıdaki örnekler, PHP ile MySQL veritabanına nasıl bağlanılacağını ve veritabanından nasıl veri çekileceğini gösterir.
8.1. MySQL Bağlantısı
Bu örnek, MySQL veritabanına nasıl bağlanılacağını gösterir. Bağlantı bilgileri doğru girildiğinde, bağlantının başarılı olduğunu belirten bir mesaj ekrana yazdırılır:
<?php
// MySQL veritabanına bağlanır
$servername = "localhost";
$username = "kullaniciadi";
$password = "sifre";
$dbname = "veritabani";
// Bağlantı oluşturma
$conn = new mysqli($servername, $username, $password, $dbname);
// Bağlantıyı kontrol et
if ($conn->connect_error) {
die("Bağlantı hatası: " . $conn->connect_error);
}
echo "Bağlantı başarılı";
?>
8.2. Veritabanından Veri Çekme
Bu örnek, MySQL veritabanından veri çekme işlemini gösterir. "Kisiler" tablosundaki veriler çekilir ve ekrana yazdırılır:
<?php
// MySQL veritabanından veri çeker ve ekrana yazdırır
$sql = "SELECT id, isim, yas FROM Kisiler";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - İsim: " . $row["isim"]. " - Yaş: " . $row["yas"]. "<br>";
}
} else {
echo "0 sonuç";
}
$conn->close();
?>