цикл foreach не может найти значения объекта json и отобразить на странице php - PullRequest
0 голосов
/ 26 февраля 2019

Я получил некоторые данные в своем файле data / clients.json, и я пытаюсь найти некоторые ключи и значения и отобразить их в своем php-файле.Это не работает, и я не могу понять, почему.

Мой файл clients.json выглядит так:

{
    "data": {
        "nikajakubec": {
            "name": "nika",
            "loans": {
                "amount": "1000",
                "reason": "for garden"
            }
        }
    }
}

И мой PHP-файл:

 <?php
  $sData = file_get_contents('data/clients.json');
  $jData = json_decode($sData);
  $jClient = $jData->data->$sUsername;
  foreach ($jClient->loans as $jLoans) {
      echo  " 
            <div>
              <div>Amount:$jLoans->loans-></div>
              <div>Reason:$sUserName->reason</div>
              </div>";
  } 


  ?>

Ответы [ 2 ]

0 голосов
/ 26 февраля 2019

Поле reason фактически вложено в loans реквизит, а не непосредственно в пользователя.

, поэтому вместо $sUserName->reason просто перейдите $jLoans->reason

И также$jLoans->amount вместо $jLoans->loans->

Учтите, что при цикле $jClient->loans вы будете работать над каждой опорой loans, то есть «количеством» и «причиной»

0 голосов
/ 26 февраля 2019

Сделайте так: -

<?php

$json = '{
    "data": {
        "nikajakubec": {
            "name": "nika",
            "loans": {
                "amount": "1000",
                "reason": "for garden"
            }
        }
    }
}';

$jData = json_decode($json);
  foreach ($jData->data as $user) {
      echo  " 
            <div>
              <div>Amount:". $user->loans->amount ."</div>
              <div>Reason: ". $user->loans->reason ."</div>
              </div>";
  }

Вывод: - https://3v4l.org/8HPV5

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...