Soru, görüş ve önerileriniz için;

contact@fatih-karakus.com

PHP ile RESTful API Oluşturma

PHP ile RESTful API Oluşturma

RESTful API (Representational State Transfer) modern web uygulamalarının geliştirilmesinde yaygın olarak kullanılan bir mimari stilidir. Bu yazıda, PHP kullanarak nasıl bir RESTful API oluşturulacağını adım adım göstereceğim. Kod örnekleriyle birlikte RESTful API'nin temel kavramlarını ve HTTP metodlarını uygulamaya aktaracağım.

RESTful API Nedir?

RESTful API, web servislerinin oluşturulması ve kullanılması için standartlar sağlayan bir mimari stilidir. Bu mimari, HTTP protokolü üzerinde çalışır ve kaynaklara (resource) erişimi temsil eder. RESTful API, HTTP metodları (GET, POST, PUT, DELETE) ile kaynaklara erişim sağlar ve genellikle JSON veya XML gibi veri formatlarıyla iletişim kurar.

RESTful API Temel Kavramları

RESTful API'nin temel kavramları aşağıdaki gibidir:

  • Kaynak (Resource): API tarafından sunulan verileri veya veri gruplarını temsil eder. Her kaynak, benzersiz bir URI'ye (Uniform Resource Identifier) sahiptir.
  • HTTP Metodları: RESTful API, HTTP metodlarını kullanarak kaynaklara erişim sağlar. GET, POST, PUT, DELETE gibi metodlar kullanılır.
  • Temsil (Representation): Kaynaklara erişildiğinde dönen veri formatını ifade eder. Genellikle JSON veya XML kullanılır.
  • URI (Uniform Resource Identifier): Kaynaklara erişmek için kullanılan benzersiz tanımlayıcıdır.

Şimdi PHP kullanarak RESTful API oluşturmayı adım adım görelim.

Adım 1: Gerekli dosyaların oluşturulması İlk olarak, API için gerekli dosyaları oluşturun:

  • index.php: Ana giriş noktası ve API yönlendirmelerini içeren dosya.
  • config.php: Veritabanı bağlantısı gibi yapılandırma ayarlarını içeren dosya.
  • db.php: Veritabanı işlemlerini gerçekleştiren dosya.

Adım 2: Temel route (yol) işleme index.php dosyasında, gelen isteği temel olarak işleyecek bir route mekanizması oluşturun:

$requestMethod = $_SERVER["REQUEST_METHOD"];
$requestUri = $_SERVER["REQUEST_URI"];

// Örnek route işleme
if ($requestMethod === "GET" && $requestUri === "/api/products") {
    // İstenilen kaynak işlenir ve ilgili veri döndürülür
}

Adım 3: Veritabanı bağlantısı config.php dosyasında, veritabanı bağlantısı için gerekli ayarları tanımlayın:

define("DB_HOST", "localhost");
define("DB_USERNAME", "username");
define("DB_PASSWORD", "password");
define("DB_NAME", "database");

db.php dosyasında, veritabanı bağlantısını gerçekleştirin:

$conn = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

// Bağlantı kontrolü
if ($conn->connect_error) {
    die("Veritabanı bağlantısı başarısız: " . $conn->connect_error);
}

Adım 4: Veri döndürme API isteklerine yanıt olarak veri döndürmek için ilgili route içerisinde gerekli işlemleri gerçekleştirin ve veriyi JSON formatında döndürün:

// Örnek route işleme
if ($requestMethod === "GET" && $requestUri === "/api/products") {
    $sql = "SELECT * FROM products";
    $result = $conn->query($sql);

    if ($result->num_rows > 0) {
        $products = [];
        while ($row = $result->fetch_assoc()) {
            $products[] = $row;
        }
        echo json_encode($products);
    } else {
        echo json_encode([]);
    }
}

Adım 5: API kullanımı API'yi kullanmak için HTTP isteklerini yapabilirsiniz. Örneğin, bir JavaScript AJAX isteği ile API'ye erişebilirsiniz:

fetch("/api/products")
    .then(response => response.json())
    .then(data => {
        // Gelen verileri kullanma
    })
    .catch(error => {
        console.error("API isteği başarısız: " + error);
    });

Sonuç olarak, PHP kullanarak RESTful API oluşturmayı adım adım göstermeye çalıştım. RESTful API'nin temel kavramlarını ve HTTP metodlarını açıkladım. Kod örnekleriyle birlikte, API'nin nasıl oluşturulacağını ve HTTP isteklerine nasıl yanıt verileceğini gösterdim. Bu yöntemleri kullanarak, veri tabanına erişen ve veri döndüren basit bir RESTful API oluşturabilirsiniz.