Search code examples
phpjsonfile-get-contents

How to get the result of json into the json file


I'm using a download api for some applications. So when I'm entering the URL 1, I'll get the new generator URL2 as a result.
Here is my code:

<?php
$json=file_get_contents("URL 1");
$details=json_decode($json);
if($details->Response=='True')
?>
 <?php echo $details->data;?>

This is what I'm getting as result from the URL 1:

{"data": "URL2"}

I need the result of url 2 witches almost similar result as URL2

{"data": "DOWNLOAD LINK"}

I found on way just to post it to other page which is something that I don't want.

I want once I enter the first page it should download by it self.

ANY IDEA?


Solution

  • Using similar logic to the answer here: https://stackoverflow.com/a/11545741/733547

    First, you get the response from "URL 1", json decode it, and set the decoded object to $details1. Then, using the $details1->data field (containing "URL 2") perform the same steps and set the "URL 2" decoded response object to $details2. Once you have that, you can echo the "URL 2" data. I'd also recommend checking that the responses actually return the data structure you expect them to, which is what the if statements are performing.

    // pull URL 1's details
    $details1 = json_decode(file_get_contents("URL 1"));
    if (!empty($details1->data)) {
        // pull URL2's details
        $details2 = json_decode(file_get_contents($details1->data));
        if (isset($details2->data)) {
            // display the data value as a hyperlink
            echo "<a>{$details2->data}</a>";
        } else {
            // display an error message.
            echo "Unable to retrieve data.";
        }
    } else {
        // display an error message.
        echo "Unable to retrieve data.";
    }