【问题标题】:Accessing data from an array when keys have spaces in their names Laravel当键名中有空格时从数组中访问数据 Laravel
【发布时间】:2018-09-17 15:24:12
【问题描述】:

我正在使用 Alpha Vantage API 并进行外部调用。问题是响应返回字符串中包含的数值,并且想知道我是否可以使用 laravel 5.2 解析它。下面是我的控制器和视图以及 json 结果

    array:2 [▼
  "Meta Data" => array:4 [▼
    "1. Information" => "Monthly Adjusted Prices and Volumes"
    "2. Symbol" => "AAPL"
    "3. Last Refreshed" => "2018-04-06"
    "4. Time Zone" => "US/Eastern"
  ]
  "Monthly Adjusted Time Series" => array:219 [▼
    "2018-04-06" => array:7 [▼
      "1. open" => "167.8800"
      "2. high" => "174.2304"
      "3. low" => "164.4700"
      "4. close" => "168.3800"
      "5. adjusted close" => "168.3800"
      "6. volume" => "164408813"
      "7. dividend amount" => "0.0000"
    ]
    "2018-03-29" => array:7 [▼
      "1. open" => "178.5400"
      "2. high" => "183.5000"
      "3. low" => "164.9400"
      "4. close" => "167.7800"
      "5. adjusted close" => "167.7800"
      "6. volume" => "701387082"
      "7. dividend amount" => "0.0000"
    ]

视图,这将返回“尝试获取非对象的属性”的错误我认为这是因为我试图声明的对象前面的数值和空格

@foreach($re as $Past)
    <tr>
    @foreach($Past as $key)
            <td>
            {{$key->open}}
            </td>
    @endforeach
    </tr>
@endforeach !>

控制器,我的控制器并不花哨,只是使用 Guzzle 进行的简单 API 调用

public function Test(){

        $client = new Client(); //GuzzleHttp\Client
        $promise = $client->get('https://www.alphavantage.co/query?function=TIME_SERIES_MONTHLY_ADJUSTED&symbol=AAPL&apikey=DEMOKey');
        $body = $promise->getbody();
        $result = json_decode($body, true);
         return view('pages.test', ['re' => $result]);
} 

【问题讨论】:

    标签: php arrays json api laravel-5


    【解决方案1】:

    您的问题的答案就在这里Eloquent: Serialization

    在您的模型中添加此行

    $hidden = ['field1', 'field2'];
    

    这些字段现在对 json 回复隐藏。

    【讨论】:

    • 很抱歉,我认为我的标题不够清晰并已进行更正。
    猜你喜欢
    • 2020-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-16
    • 2020-12-10
    • 2013-04-17
    • 2015-09-14
    • 1970-01-01
    相关资源
    最近更新 更多