DigiNet Events
DigiNet Events

Reputation: 347

Extract the shorturl value from YOURLS API

i want to extract only the shorturl value from this code.

the last (echo $data;) extracts all of the data and i want to have only $shorturl value.

// Init the CURL session
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $api_url );
curl_setopt( $ch, CURLOPT_HEADER, 0 );            // No header in the result
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true ); // Return, do not echo result
curl_setopt( $ch, CURLOPT_POST, 1 );              // This is a POST request
curl_setopt( $ch, CURLOPT_POSTFIELDS, array(      // Data to POST
        'url'      => $url,
        'keyword'  => $keyword,
        'title'    => $title,
        'format'   => $format,
        'action'   => 'shorturl',
        'username' => $username,
        'password' => $password
    ) );

// Fetch and return content
$data = curl_exec($ch);
curl_close($ch);

// Do something with the result. Here, we just echo it.
echo $data;

Upvotes: 0

Views: 519

Answers (1)

Syscall
Syscall

Reputation: 19779

You can use json_decode() to transform the incomming data $data.

$data = '{"status":"success","code":"error:url","url":{"keyword":"uqcgu","url":"https:\/\/www.diginet.co.il\/event2\/index.php?id=c2f91a&p=0547899559","title":"Sample","date":"2018-04-17 06:55:19","ip":"31.168.11.69","clicks":"1"},"message":"https:\/\/www.example.com\/example\/index.php?id=c2f91a&p=[...] already exists in database","title":"Example","shorturl":"http:\/\/example.com\/i\/uqcgu","statusCode":200}';
$data = json_decode($data);
echo $data->shorturl;

Will outputs:

http://example.com/i/uqcgu

Upvotes: 1

Related Questions