PHP ile Json Yapısı Oluşturma

Boothes

Yeni üye
7 Kas 2021
23
6
25
VATAN
Bu yazımda PHP – PDO ile veri tabanından çektiğimiz veriyi JSON çıktısı olarak almayı işleyeceğiz. JSON dosyaları gün geçtikçe daha yaygın bir biçimde kullanılmaktadır ve ihtiyaç haline geldiğini düşünüyorum. Modern Front-End Javascript kütüphaneleri de veri döndürmek için JSON yapısını seçenek sunuyor.
Bildiğiniz gibi PDO, PHP ile veri tabanı işlemleri için kullanılmaktadır. Veri tabanımızı oluşturup bilgilerimizi girip ilk adım olan veri tabanı bağlama işlemini hemen yapalım.
PDO ile örnek bir veri tabanı bağlantısı aşağıdaki gibi oluşmaktadır. try ile bağlantıyı kurmayı deneyip olası bir hata durumunda catch ile yakalayıp hatayı ekrana basmaktadır.

ojgExI.png
















Localhost üzerinden çalıştığım için kullanıcı adı: root, şifre ise boş olacak şekilde ayarladım. Veri tabanı ismim olan boothes'i kendi veri tabanı adınızla kullanıcı adı ve şifrenizi de kendinize göre belirlediğinizde başarılı bir şekilde veri tabanı bağlantısını kurmuş olacaksınız. Türkçe karakter desteği için charset ise utf-8 olarak ayarlanmıştır.
Şimdi gelelim sorgu ve diğer işlemlerimizi tamamlamaya;


ojgSHt.png


Neler yaptık açıklayalım;
$sorgu değişkenine veri tabanı bağlama aşamasında atadığımız $db değişkeni üzerinden erişip sorgumuzu yazıyoruz. Örnek haberler tablosundaki tüm verileri çekiyoruz.
Çektiğimiz verileri dizi formatına getiriyoruz ki json_encode fonksiyonu kullanabilelim. Onu da $sonuc değişkenine atıyoruz.
$json_veri değişkenimizi oluşturup json_encode fonksiyonuna $sonuc değişkenimizi ilk parametre olarak atayıp diğer 2 json parametresinden;
JSON_UNESCAPED_UNICODE ile türkçe karakter desteği sağlıyoruz, JSON_PRETTY_PRINT ile de dosyaya daha okunaklı ve güzel bir biçimde yazılmasını sağlıyoruz.
En sonunda file_put_contents fonksiyonu ile dosyaya yazırma işlemini yapıyoruz. İlk parametre dosya adı ikinci parametre ise dosya içeriğini belirlemektedir. Bizim dosya içeriğimizde oluşturduğumuz JSON yapısını direkt olarak dosyaya yazdırıyoruz.
İşlemlerimiz bu kadar umarım faydalı olmuştur.

Mutlu kodlamalar :)
 

Eagleweb

Kıdemli Üye
8 May 2021
2,120
1,151
localhost/e8
Merhaba,
Emeğinize Sağlık. Konu detaylandırılabilir biraz daha göze hitabı farklılaştırılabilirdir. eleştiri olarak algılama öneridir. :)
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.