v2.5.2
Giriş yap

php json yazdırma

Anonim
529 defa görüntülendi ve 1 kişi tarafından değerlendirildi

böyle bir json datası var elimde ben servis1 , servis2 yazan yeri yazdırmak istiyorum ama başaramadım

{
"servis1": {
"Category": "activation",
"Qty": 2000,
"Price": 14.83
},
"servis2": {
"Category": "activation",
"Qty": 11413,
"Price": 19
}

bu benim php kodum

<?php
session_start();
include"/vendor/autoload.php";
include"/baglan.php";

//$insert =  $DB->query("INSERT INTO sc_ulke(ulke_isim) VALUES(?)", array($_POST["ulke_isim"]));
 
$ulke =  $DB->query("SELECT * FROM sc_ulke");

foreach ($ulke as $value) {

 
   $url = file_get_contents("xxxxx".trim($value["ulke_isim"])."/xxxx");
   $json = json_decode($url,true);
 
   
 print_r($json);
 
 
}
 
 ?>
Cevap yaz
Cevaplar (7)
asanprogrammer
943 gün önce

sanırım direkt döngü içindeki keyi almak istiyorsun ben böyle anladım onu yapmak için döngüye sokup bir arraya pushlayabilirsin keyleri
yani şöyle ;

<?php

$keys = array();

foreach($decode_json as $key => $value){
    $keys[] = $key;
}

?>

buradan çıkan sonuç sana servis1, servis2 , hepsiburada gibi yani keyde ne yazıyorsa onu döndürecektir .

makifgokce
943 gün önce

arraydeki key değerini almaya çalışıyorsunuz sanırım.
key() fonksiyonu işinizi görecektir.
https://www.php.net/manual/tr/function.key.php

$array = ["servis1" => ["Category" => "activation", "Qty" => 2000, "Price" => 14.83]];
echo key($array);
5finger
943 gün önce

servis1, servis2 nin içindekilerini alabiliyorum ben servis1,servis2 yi almak isitiyorum örnek kod daki gibi haraj,hepsiburadacom servis simlerini ve "virtual25" oporatörlein isimlerini

"haraj": {
"virtual21": {
"cost": 36,
"count": 2405
},
"virtual25": {
"cost": 33,
"count": 629
},
"hepsiburadacom": {
"virtual21": {
"cost": 7,
"count": 4
},
"virtual23": {
"cost": 20,
"count": 1000
}
},
makifgokce
943 gün önce

tam olarak nasıl yazdırmayı istiyorsun.
aşağıdaki gibi tüm veriyi yazdırmak için döngüye alabilirsin.

foreach($json as $key => $service){
    $category = $service["Category"];
    $qty = $service["Qty"];
    $price = $service["Price"];
    echo "$key : category -> $category, qty -> $qty, price -> $price <br>";
}

veya sadece istediğini yazdırmak için aşağıdaki gibi yazdırabilirsin.

$category = $json["servis1"]["Category"];
$qty = $json["servis1"]["Qty"];
$price = $json["servis1"]["Price"];
echo "category -> $category, qty -> $qty, price -> $price";
5finger
943 gün önce

"json verinin en sonundaki süslü parantez eksik bu yüzden sonuç alamıyorsun." json sadece bir örnek

5finger
943 gün önce

@tayfunerbilen hocam nerdesiniz

makifgokce
943 gün önce

json verinin en sonundaki süslü parantez eksik bu yüzden sonuç alamıyorsun.