JSON Kodlama ve Kod Açma
PHP dizilerini JSON'a dönüştürün ve json_encode/json_decode ile JSON yanıtlarını ayrıştırın.
JSON Kodlama ve Kod Açma, CoddyKit'te ücretsiz bir PHP Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, PHP Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. PHP Academy kursu toplamda 4 dersten oluşur.
JSON Nedir?
JSON (JavaScript Nesne Gösterimi), API iletişimi ve yapılandırma dosyaları için kullanılan hafif bir veri biçimidir. PHP, JSON'u kodlamak ve kodunu çözmek için yerleşik işlevlere sahiptir.
json_encode()
Bir PHP değerini (dizi, nesne, skaler) JSON karakter dizisine dönüştürür.
<?php
$data = ["name" => "Alice", "age" => 30, "active" => true];
$json = json_encode($data);
echo $json; // {"name":"Alice","age":30,"active":true}json_decode()
Bir JSON karakter dizisini ayrıştırır ve bir PHP değeri döndürür. Varsayılan olarak stdClass nesneleri döndürür; ilişkisel diziler için ikinci bağımsız değişken olarak true gönderin.
<?php
$json = '{"name":"Alice","age":30}';
$obj = json_decode($json); // stdClass
$arr = json_decode($json, true); // associative array
echo $arr["name"]; // "Alice"JSON'ı Biçimlendirme
Çıktıyı insanların okuyabileceği şekilde biçimlendirmek için JSON_PRETTY_PRINT bayrağını kullanın.
<?php
$json = json_encode(["a" => 1, "b" => 2], JSON_PRETTY_PRINT);
echo $json;
// {
// "a": 1,
// "b": 2
// }Yararlı json_encode Bayrakları
Yaygın bayraklar: JSON_UNESCAPED_UNICODE (UTF-8'i olduğu gibi korur), JSON_UNESCAPED_SLASHES (/ karakterinden önce ters eğik çizgi eklemez), JSON_THROW_ON_ERROR (başarısızlık durumunda istisna oluşturur).
<?php
$json = json_encode(["url" => "https://example.com/path"],
JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);Hata Yönetimi
Öznitelikleri kodladıktan veya çözdükten sonra json_last_error() işlevini denetleyin ya da otomatik olarak istisna almak için JSON_THROW_ON_ERROR kullanın.
<?php
try {
$data = json_decode($input, true, 512, JSON_THROW_ON_ERROR);
} catch (\JsonException $e) {
echo "Invalid JSON: ".$e->getMessage();
}Nesneleri Kodlama
Nesneler JSON nesneleri olarak kodlanır. Varsayılan olarak yalnızca herkese açık özellikler dahil edilir. Serileştirmeyi denetlemek için JsonSerializable uygulayın.
<?php
class Point implements \JsonSerializable {
public function __construct(
private float $x, private float $y
) {}
public function jsonSerialize(): mixed {
return ["x" => $this->x, "y" => $this->y];
}
}
echo json_encode(new Point(1.0, 2.5)); // {"x":1,"y":2.5}İç İçe Yapılar
JSON, iç içe yapıları destekler. Derin iç içe geçmiş PHP dizileri, sorunsuz bir şekilde iç içe JSON nesnelerine veya dizilerine dönüştürülür.
<?php
$order = [
"id" => 1,
"items" => [
["sku" => "A1", "qty" => 2],
["sku" => "B3", "qty" => 1],
],
];
echo json_encode($order, JSON_PRETTY_PRINT);Kod Çözme Derinliği
json_decode işlevinin 3. parametresi, en yüksek özyineleme derinliğini belirler (varsayılan değer 512'dir). Çok derin JSON verileri için daha yüksek bir sınır gerekebilir.
JSON_NUMERIC_CHECK
JSON_NUMERIC_CHECK bayrağı, kodlama sırasında sayısal dizeleri sayılara dönüştürür. Dikkatli kullanın; telefon numaralarını bozabilir.
Büyük JSON Verilerini Akışla İşleme
Çok büyük JSON dosyaları için dosyanın tamamını json_decode ile yüklemek yerine bir akış tabanlı ayrıştırıcı kütüphanesi (ör. halaxa/json-machine) kullanın.
Özet
json_encode, PHP değerlerini JSON dizelerine dönüştürür. json_decode, JSON verilerini ayrıştırır. Güvenli hata yönetimi için JSON_THROW_ON_ERROR kullanın.
Hızlı Kontrol
json_decode işlevinden ilişkisel bir dizi nasıl elde edersiniz?
Yapay zeka eğitmeniyle PHP öğren — ücretsiz
Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.
- Kurslar
- 49
- Dersler
- 195
Sıkça Sorulan Sorular
“JSON Kodlama ve Kod Açma” dersi ücretsiz mi?
Evet — “JSON Kodlama ve Kod Açma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve PHP Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. PHP Academy kursu toplamda 4 dersten oluşur.
“JSON Kodlama ve Kod Açma” dersinde ne öğreneceğim?
PHP dizilerini JSON'a dönüştürün ve json_encode/json_decode ile JSON yanıtlarını ayrıştırın. PHP Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
PHP Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te PHP Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.
“JSON Kodlama ve Kod Açma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu PHP Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her PHP Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- JSON Kodlama ve Kod Açma
- cURL ile HTTP İstekleri Gönderme
- API Yanıtlarını ve Hatalarını İşleme
- Basit Bir API İstemcisi Oluşturma