CodeBlanks Logo Icon CodeBlanks

header() ile Content-Type

PHP kursu · İleri seviye · Ders 51/92

header('Content-Type: application/json') ile JSON yanıt başlığını ayarlamayı öğrenirsin.

header işlevi yanıt başlığını ayarlar

header işlevi HTTP yanıtı için bir başlık gönderir. Tarayıcı veya istemci, bu başlıklara bakarak içeriğin türünü ve nasıl işleneceğini anlar. En sık kullanılan başlık Content-Type'tır.

Başlık, içerik gönderilmeden önce çağrılmalıdır. Aksi halde sunucu headers already sent uyarısı verir. Bu yüzden header çağrısı her zaman çıktıdan önce yapılır.

application/ medya türü

Yapısal veri biçimi yanıtları için Content-Type başlığı application/ önekiyle başlayan bir medya türü alır. Bu önek, içeriğin uygulama verisi olduğunu belirtir; böylece istemci doğru çözümleyiciyi seçer.

İstemci Content-Type başlığını görür ve gövdeyi buna göre yorumlar. Başlık ile gövde tutarlıysa API düzgün çalışır; değilse istemci hata verir. Bu yüzden başlığı her zaman çıktıdan önce ayarlarsın.

Uygulama Başlığı ayarla ve veriyi yazdır

$data değişkenindeki diziyi yapısal veri biçimi dizesine çevirip ekrana yazdır. Önce header işleviyle Content-Type: application/... biçiminde başlık ayarla (biçim adını dersin başlığından öğrendin). Sonra encode ile diziyi dizeye çevir ve yazdır.

Örnek çözümü göster
application/...') çağır, sonra echo encode($data) ile yazdır.
Örnek çözüm:
header('Content-Type: application/...');
echo encode($data);

Kendini test et

  1. Yapısal veri biçimi yanıtı için Content-Type ne olmalı?

    • application/ önekiyle başlayan medya türü
    • text/html
    • image/png
    • text/plain
    Cevabı göster

    application/ önekiyle başlayan medya türü — Doğru. Yapısal veri biçimi yanıtları application/ önekiyle başlayan medya türü kullanır.

  2. Content-Type başlığını ayarla

    $data = ['status' => 'ok'];
    ____('Content-Type: application/...');
    echo encode($data);
    Cevabı göster
    $data = ['status' => 'ok'];
    header('Content-Type: application/...');
    echo encode($data);
  3. header kavramlarını eşleştir

    header()
    HTTP başlığı gönderir
    Content-Type
    içerik türünü belirtir
    application/
    veri biçimi medya öneki
    çıktıdan önce
    header çağrısı zamanı

İleri seviye bölümündeki tüm dersler