<?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 \ // -X POST \ // -d "id=1&content=Hello+world%21&date=2015-06-30+19%3A42%3A21" \ // "https://httpbin.org/post" $data = array('id' => '1', 'content' => 'Hello world!', 'date' => date('Y-m-d H:i:s')); $curl = new Curl(); $curl->post('https://httpbin.org/post', $data); var_dump($curl->response->form);
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; define('CLIENT_ID', 'XXXXXXXXXXXX.apps.googleusercontent.com'); 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 {
<?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; define('GRATIPAY_USERNAME', 'XXXXXXXXXX'); define('GRATIPAY_API_KEY', 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'); $data = array(array('username' => 'user' . mt_rand(), 'platform' => 'gratipay', 'amount' => '0.02'), array('username' => 'user' . mt_rand(), 'platform' => 'gratipay', 'amount' => '0.02')); $curl = new Curl(); $curl->setHeader('Content-Type', 'application/json'); $curl->setBasicAuthentication(GRATIPAY_API_KEY); $curl->post('https://gratipay.com/' . GRATIPAY_USERNAME . '/tips.json', json_encode($data)); foreach ($curl->response as $tip) { echo $tip->amount . ' given to ' . $tip->username . '.' . "\n"; }
<?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'); $status = 'I love php curl class. https://github.com/php-curl-class/php-curl-class'; $oauth_data = array('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', 'status' => $status); $url = 'https://api.twitter.com/1.1/statuses/update.json'; $request = implode('&', array('POST', rawurlencode($url), rawurlencode(http_build_query($oauth_data, '', '&', PHP_QUERY_RFC3986)))); $key = implode('&', array(API_SECRET, OAUTH_TOKEN_SECRET)); $oauth_data['oauth_signature'] = base64_encode(hash_hmac('sha1', $request, $key, true)); $data = http_build_query($oauth_data, '', '&'); $curl = new Curl(); $curl->post($url, $data); echo 'Posted "' . $curl->response->text . '" at ' . $curl->response->created_at . '.' . "\n";
require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; define('CLIENT_ID', 'XXXXXXXXXXXX.apps.googleusercontent.com'); 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'])) { // Use the access token to send an email. $curl = new Curl(); $curl->setHeader('Content-Type', 'message/rfc822'); $curl->setHeader('Authorization', 'OAuth ' . $_SESSION['access_token']); $boundary = md5(time()); $raw = 'MIME-Version: 1.0' . "\r\n" . 'Subject: hi' . "\r\n" . 'To: John Doe <*****@*****.**>' . "\r\n" . 'Content-Type: multipart/alternative; boundary=' . $boundary . "\r\n" . "\r\n" . '--' . $boundary . "\r\n" . 'Content-Type: text/plain; charset=UTF-8' . "\r\n" . "\r\n" . 'hello, world' . "\r\n" . "\r\n" . '--' . $boundary . "\r\n" . 'Content-Type: text/html; charset=UTF-8' . "\r\n" . "\r\n" . '<em>hello, world</em>' . "\r\n" . ''; $curl->post('https://www.googleapis.com/upload/gmail/v1/users/me/messages/send', $raw); echo 'Email ' . $curl->response->id . ' was sent.'; } else { $curl = new Curl(); $curl->get('https://accounts.google.com/o/oauth2/auth', array('scope' => 'https://www.googleapis.com/auth/gmail.compose', '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; $myfile = curl_file_create('cats.jpg', 'image/png', 'test_name'); $curl = new Curl(); $curl->post('https://httpbin.org/post', array('myfile' => $myfile)); if ($curl->error) { echo 'Error: ' . $curl->errorMessage . "\n"; } else { echo 'Success' . "\n"; }
<?php require '../src/Curl/Curl.php'; use ZzhhCurl\Curl; $content = <<<EOF <?php echo 'hello, world'; EOF; $curl = new Curl(); $curl->post('https://api.github.com/gists', json_encode(array('description' => 'PHP-Curl-Class test.', 'public' => 'true', 'files' => array('Untitled.php' => array('content' => $content))))); echo 'Gist created at ' . $curl->response->html_url . "\n";