Получить массив в файле php из http-запроса - PullRequest
1 голос
/ 02 августа 2020

Я изучаю php и пытаюсь получить файл php из HTTP-запроса с помощью Guzzle, а затем просто беру конкретный массив из этого содержимого и игнорирую остальное. Но я не уверен, как получить этот массив.

<?php 
require_once "vendor/autoload.php";

use GuzzleHttp\Client;

$client = new Client();
$response = $client->request('GET', 'http://api-address/file.php');

$body = $response->getBody();
$decoded = json_decode($body, true);

$contents = file_get_contents($decoded);

Когда я печатаю содержимое $, он выглядит так, как ожидалось, например:

<?php

$var = "example string";

$array = [
   [
      'name' => 'stuff I need'
   ]
];

Я хочу просто получить массив, перебирать его и записывать каждый в файл, но я не знаю, как получить именно это и игнорировать другие вещи, которых нет в этом массиве, если это имеет смысл. Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 02 августа 2020

Вы используете ...

json_decode($body, true);

Этот метод преобразует содержимое в массив, это означает, что, вероятно, если вы выполните ...

var_dump($decoded);

, вы увидите массив, который содержит массивы внутри ...

Ну, я имею в виду, вы можете получить ...

$array = [
 [
 'name' => 'stuff I need'
 ]
];

Переход в массив $ json_decode ().

Если вы спрашиваете, как, ну, просто используйте следующий шаг ...

$contentArray = $decoded[1] //With this you can get the array that you need.
...