<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; define('YOUTUBE_API_KEY', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); $playlistId = 'RDHJb0VYVtaNc'; $curl = new Curl(); $curl->get('https://www.googleapis.com/youtube/v3/playlistItems', array('key' => YOUTUBE_API_KEY, 'maxResults' => '50', 'part' => 'snippet', 'playlistId' => $playlistId)); echo 'Songs in this playlist:' . "\n"; foreach ($curl->response->items as $item) { echo $item->snippet->title . "\n" . 'https://www.youtube.com/watch?v=' . $item->snippet->resourceId->videoId . "\n" . "\n"; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; $address = 'Paris, France'; $curl = new Curl(); $curl->get('http://maps.googleapis.com/maps/api/geocode/json', array('address' => $address)); if ($curl->response->status === 'OK') { $result = $curl->response->results['0']; echo $result->formatted_address . ' is located at ' . 'latitude ' . $result->geometry->location->lat . ' and ' . 'longitude ' . $result->geometry->location->lng . '.'; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; $video_ids = array('9bZkp7q19f0', '_OBlgSz8sSM', 'uelHwf8o7_U', 'KQ6zr6kCPj8', 'ASO_zypdnsQ', 'pRpeEdMmmQ0'); foreach ($video_ids as $video_id) { $curl = new Curl(); $curl->get('https://gdata.youtube.com/feeds/api/videos/' . $video_id . '?alt=json'); echo '"' . $curl->response->entry->title->{'$t'} . '" has ' . number_format($curl->response->entry->{'yt$statistics'}->viewCount) . ' views.' . "\n"; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; define('INSTAGRAM_CLIENT_ID', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); define('INSTAGRAM_CLIENT_SECRET', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); session_start(); $redirect_uri = implode('', array(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on' ? 'https' : 'http', '://', $_SERVER['SERVER_NAME'], $_SERVER['SCRIPT_NAME'])); if (isset($_GET['code'])) { $code = $_GET['code']; $curl = new Curl(); $curl->post('https://api.instagram.com/oauth/access_token', array('client_id' => INSTAGRAM_CLIENT_ID, 'client_secret' => INSTAGRAM_CLIENT_SECRET, 'grant_type' => 'authorization_code', 'redirect_uri' => $redirect_uri, 'code' => $code)); if ($curl->error) { echo $curl->response->error_type . ': ' . $curl->response->errorMessage . '<br />'; echo '<a href="?">Try again?</a>'; exit; } $_SESSION['access_token'] = $curl->response->access_token; } if (isset($_SESSION['access_token'])) { $curl = new Curl(); $curl->get('https://api.instagram.com/v1/media/popular', array('access_token' => $_SESSION['access_token'])); foreach ($curl->response->data as $media) { echo '<a href="' . $media->link . '" target="_blank">' . '<img alt="" src="' . $media->images->thumbnail->url . '" />' . '</a>'; } } else { header('Location: https://api.instagram.com/oauth/authorize/?' . http_build_query(array('client_id' => INSTAGRAM_CLIENT_ID, 'redirect_uri' => $redirect_uri, 'response_type' => 'code'))); exit; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; $curl = new Curl(); $curl->get('http://backend.deviantart.com/rss.xml', array('q' => 'boost:popular in:photography/people/fashion', 'type' => 'deviation')); foreach ($curl->response->channel->item as $entry) { $thumbnails = $entry->children('http://search.yahoo.com/mrss/')->thumbnail; foreach ($thumbnails as $thumbnail) { $img = $thumbnail->attributes(); echo '<a href="' . $entry->link . '">' . '<img alt="" src="' . $img->url . '" height="' . $img->height . '" width="' . $img->width . '" />' . '</a>'; } }
define('CLIENT_SECRET', 'XXXXXXXXXXXXXXXXXXXXXXXX'); session_start(); if (isset($_GET['code'])) { $code = $_GET['code']; // Exchange the authorization code for an access token. $curl = new Curl(); $curl->post('https://accounts.google.com/o/oauth2/token', array('code' => $code, 'client_id' => CLIENT_ID, 'client_secret' => CLIENT_SECRET, 'redirect_uri' => implode('', array(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on' ? 'https' : 'http', '://', $_SERVER['SERVER_NAME'], $_SERVER['SCRIPT_NAME'])), 'grant_type' => 'authorization_code')); if ($curl->error) { echo $curl->response->error . ': ' . $curl->response->error_description; exit; } $_SESSION['access_token'] = $curl->response->access_token; header('Location: ?'); } elseif (!empty($_SESSION['access_token']) && !isset($_GET['retry'])) { // Use the access token to retrieve the profile. $curl = new Curl(); $curl->setHeader('Content-Type', 'application/json'); $curl->setHeader('Authorization', 'OAuth ' . $_SESSION['access_token']); $curl->get('https://www.googleapis.com/plus/v1/people/me'); if ($curl->error) { echo 'Error ' . $curl->response->error->code . ': ' . $curl->response->error->message . '.<br />'; echo '<a href="?retry">Retry?</a>'; exit; } echo 'Hi ' . $curl->response->displayName . '.'; } else { $curl = new Curl(); $curl->get('https://accounts.google.com/o/oauth2/auth', array('scope' => 'https://www.googleapis.com/auth/plus.me', 'redirect_uri' => implode('', array(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on' ? 'https' : 'http', '://', $_SERVER['SERVER_NAME'], $_SERVER['SCRIPT_NAME'])), 'response_type' => 'code', 'client_id' => CLIENT_ID, 'approval_prompt' => 'force')); $url = $curl->responseHeaders['Location']; echo '<a href="' . $url . '">Continue</a>'; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; define('MAILCHIMP_API_KEY', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-XXX'); $parts = explode('-', MAILCHIMP_API_KEY); define('MAILCHIMP_BASE_URL', 'https://' . $parts['1'] . '.api.mailchimp.com/2.0/'); $curl = new Curl(); $curl->get(MAILCHIMP_BASE_URL . '/lists/list.json', array('apikey' => MAILCHIMP_API_KEY)); if ($curl->response->total === 0) { echo 'No lists found'; exit; } $lists = $curl->response->data; $list = $lists['0']; $curl->post(MAILCHIMP_BASE_URL . '/lists/subscribe.json', array('apikey' => MAILCHIMP_API_KEY, 'id' => $list->id, 'email' => array('email' => '*****@*****.**'))); if ($curl->error) { echo $curl->response->name . ': ' . $curl->response->error . "\n"; } else { echo 'Subscribed ' . $curl->response->email . '.' . "\n"; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; $data = array(); if (isset($_GET['after'])) { $data['after'] = $_GET['after']; } $curl = new Curl(); $curl->get('http://www.reddit.com/r/pics/top/.json', $data); echo '<ul>'; foreach ($curl->response->data->children as $result) { $pic = $result->data; echo '<li>' . '<a href="' . $pic->url . '" target="_blank">' . $pic->title . '<br />' . '<img alt="" src="' . $pic->thumbnail . '" />' . '</a> ' . $pic->score . ' pts ' . $pic->num_comments . ' comments by ' . $pic->author . '</li>'; } echo '</ul>'; echo '<a href="?after=' . $curl->response->data->after . '">Next</a>';
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; define('API_KEY', 'XXXXXXXXXXXXXXXXXXXXXXXXX'); define('API_SECRET', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); define('OAUTH_ACCESS_TOKEN', 'XXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); define('OAUTH_TOKEN_SECRET', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); $woeid = '2487956'; $oauth_data = array('id' => $woeid, 'oauth_consumer_key' => API_KEY, 'oauth_nonce' => md5(microtime() . mt_rand()), 'oauth_signature_method' => 'HMAC-SHA1', 'oauth_timestamp' => time(), 'oauth_token' => OAUTH_ACCESS_TOKEN, 'oauth_version' => '1.0'); $request_values = $oauth_data; ksort($request_values); $url = 'https://api.twitter.com/1.1/trends/place.json'; $request = implode('&', array('GET', rawurlencode($url), rawurlencode(http_build_query($request_values, '', '&', PHP_QUERY_RFC3986)))); $key = implode('&', array(rawurlencode(API_SECRET), rawurlencode(OAUTH_TOKEN_SECRET))); $oauth_data['oauth_signature'] = base64_encode(hash_hmac('sha1', $request, $key, true)); $authorization = array(); foreach ($oauth_data as $key => $value) { $authorization[] = $key . '="' . rawurlencode($value) . '"'; } $authorization = 'Authorization: OAuth ' . implode(', ', $authorization); $curl = new Curl(); $curl->setOpt(CURLOPT_HTTPHEADER, array($authorization)); $curl->get($url, array('id' => $woeid)); echo 'Current trends:' . "\n"; foreach ($curl->response['0']->trends as $trend) { echo '- ' . $trend->name . "\n"; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; define('INSTAGRAM_CLIENT_ID', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); $curl = new Curl(); $curl->get('https://api.instagram.com/v1/media/search', array('client_id' => INSTAGRAM_CLIENT_ID, 'lat' => '37.8296', 'lng' => '-122.4832')); foreach ($curl->response->data as $media) { $image = $media->images->low_resolution; echo '<img alt="" src="' . $image->url . '" width="' . $image->width . '" height="' . $image->height . '" />'; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; $curl = new Curl(); $curl->get('https://coinbase.com/api/v1/prices/spot_rate'); echo 'The current price of bitcoin at Coinbase is ' . '$' . $curl->response->amount . ' ' . $curl->response->currency . '.' . "\n";
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; define('API_KEY', ''); define('API_SECRET', ''); $url = 'https://coinbase.com/api/v1/account/balance'; $nonce = (int) (microtime(true) * 1000000.0); $message = $nonce . $url; $signature = hash_hmac('sha256', $message, API_SECRET); $curl = new Curl(); $curl->setHeader('ACCESS_KEY', API_KEY); $curl->setHeader('ACCESS_SIGNATURE', $signature); $curl->setHeader('ACCESS_NONCE', $nonce); $curl->get($url); echo 'My current account balance at Coinbase is ' . $curl->response->amount . ' ' . $curl->response->currency . '.' . "\n";
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; function construct_url($photo, $size = 's', $ext = 'jpg') { $url = 'http://farm' . $photo->farm . '.staticflickr.com/' . $photo->server . '/' . $photo->id . '_' . $photo->secret . '_' . $size . '.' . $ext; return $url; } define('FLICKR_API_KEY', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); $data = array('method' => 'flickr.photos.search', 'api_key' => FLICKR_API_KEY, 'text' => 'happy', 'sort' => 'interestingness-desc', 'safe_search' => '3', 'format' => 'json', 'nojsoncallback' => '1'); $curl = new Curl(); $curl->get('https://api.flickr.com/services/rest/', $data); foreach ($curl->response->photos->photo as $photo) { echo '<img alt="" src="' . construct_url($photo) . '" height="75" width="75" />'; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; // Retrieve first N pages of search results. $pages = 10; $q = 'coffee'; $curl = new Curl(); $curl->setURL('https://www.example.com/search'); for ($i = 1; $i <= $pages; $i++) { // https://www.example.com/search?q=coffee&page=N $curl->get(array('q' => $q, 'page' => $i)); }