Projelerinizde verimliliği artırmak, hataları bulmak ve daha hızlı geliştirmek için kullanabileceğiniz araçlarla dolu bir dünya!

Php curl ile json veri çekme

Sezai AlkanFrontend Developer

Curl ile uzak konumdan kolaylıkla veriler çekebiliriz. Api ler oluşturabiliriz, Örneğin farklı bir web sitesindeki sorgulamayı, Curl ile sorgulayabilir ve bu sorgulamayı sanki biz yapıyormuşuz gibi kullanıcıya gösterebiliriz. jsonplaceholder.typicode.com web sitesinden kendinize fazlasıyla örnek json dosyaları bulabilirsiniz. 

Veri Çekme

İlk olarak Curl ile jsonplaceholder.typicode.com/user adresindeki kullanıcı isimli json dosyasından örnek kullanıcıları çekeceğiz. 

$cURL = curl_init();     
curl_setopt_array($cURL,
    [
        CURLOPT_URL => 'https://jsonplaceholder.typicode.com/users',
        CURLOPT_SSL_VERIFYPEER => FALSE,
        CURLOPT_RETURNTRANSFER => 1
    ]);     
$x = curl_exec($cURL);     
curl_close($cURL);

print_r($x);

Uzaktan çektiğimiz veriyi ekrana yazdırdığımız zaman belirli bir düzende olmadığını ve veriyi işleyemediğimizi fark edeceksiniz. Veriyi tekrar json formatına dahil etmek için json_decode() fonksiyonu ile veriyi yapısal olarak json formatına çeviriyoruz. İkince parametre olarak, true değerini kullanırsak Veriyi diziymiş gibi müdahale etmemiz gerekecek ve elimizde json yapısında bazı değerlere ulaşamıyor olacağız bu nedenle false olarak kullanım sağlıyoruz.

$data = json_decode($x, FALSE);
echo "<pre>";
print_r($data[1]);

Yukarıdaki örnekte data içerinden veri çekerken diziymiş gibi davranmamızın sebebi user json dosyasını incelediğinizde birden fazla kullanıcının olduğu göreceksiniz. Ve bu kullanıcılara erişim indis numaraları ile sağlanabilir. 

user içerisinde bir kullanıcının name ine ulaşmak için

$data = json_decode($x, FALSE);
echo "<pre>";
print_r($data[1]->name);

Yukarıdaki gibi ulaşım sağlayabiliriz.

Anonim

Yorum yapabilmek için giriş yapmanız gerekmektedir.

Sosyal Medya

Mobil Uygulama

Tarayıcı Eklentileri

Şifre Oluşturucu

Google Chrome Plugin

Yardımcı Siteler

w8icon

w8icon.com

Kod depo

koddepo.com

e-mvc

e-mvc.com