PHP
HTTP yöntemleri
GET, POST, PUT ve DELETE HTTP yöntemlerini ve REST'te kullanımını öğrenirsin.
HTTP yöntemleri ve görevleri
REST API'lerde dört temel HTTP yöntemi kullanılır: GET bir kaynağı okur, POST yeni kaynak oluşturur, PUT var olan kaynağı günceller, DELETE kaynağı siler. Her yöntemin tek bir açık görevi vardır.
İstekte bulunan yöntem $_SERVER['REQUEST_METHOD'] ile okunur. Bir dış API'den veri çekmek için PHP'de file_get_contents işlevi bir URL'ye istek gönderip yanıtı dize olarak alabilir. Dönen dize decode ile diziye çevrilir.
file_get_contents ile dış istek
Bir API'den veri çekmek için file_get_contents işlevine bir URL verirsin. İşlev URL'ye istek gönderir ve yanıtı dize olarak döndürür. Dönen dize yapısal veri biçimindeyse, decode ile diziye çevirip içindeki alanlara erişirsin.
Yerel bir dosyayı da aynı işlevle okuyabilirsin; URL yerine dosya yolu verirsin. Bu sayede örnek veriyi dosyaya yazıp sonradan okuyarak istek akışını güvenle deneyebilirsin.
Uygulama Dosyadan okuyup diziye çevir
$file değişkeni bir dosya yolunu tutuyor ve içine örnek veri yazıldı. file_get_contents ile dosyayı oku ve $content değişkenine ata. Sonra decode ile $content'i diziye çevir (true ile) ve $data'ya ata. Son olarak $data['name'] değerini yazdır.
Örnek çözümü göster
file_get_contents ile $file'ı oku, decode ile $content'ı diziye çevir, name'i echo ile yazdır.
Örnek çözüm:
$content = file_get_contents($file);
$data = decode($content, true);
echo $data['name'];
Kendini test et
-
Yeni bir kaynak oluşturmak için hangi HTTP yöntemi kullanılır?
Cevabı göster
POST — Doğru. POST yöntemi yeni bir kaynak oluşturmak için kullanılır.
-
HTTP yöntemlerini görevleriyle eşleştir
- GET
- kaynağı okur
- POST
- yeni kaynak oluşturur
- PUT
- kaynağı günceller
- DELETE
- kaynağı siler
-
Dosyadan dize oku
$file = sys_get_temp_dir() . '/api_data.txt';
file_put_contents($file, '{"name":"Ayşe"}');
$content = ____($file);
$data = decode($content, true);
Cevabı göster
$file = sys_get_temp_dir() . '/api_data.txt';
file_put_contents($file, '{"name":"Ayşe"}');
$content = file_get_contents($file);
$data = decode($content, true);
Sıradaki ders: Özet - JSON ve API