flurin-d
6/23/2016 - 1:46 PM

twitter API function

twitter API function

<?
function showtweets($amount, $api_user, $api_key, $api_secred){
	// CONFIG
	// get account data
	$username = $api_user;
    $key      = $api_key;
    $secret   = $api_secred;
    $quest    = "https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=".urlencode($username);
    $tokenUrl = "https://api.twitter.com/oauth2/token";
	// create auth key
    $auth     = base64_encode(urlencode($key).':'.urlencode($secret));
	// GET TOKEN
	// send request to torkenUrl
    $getToken = curl_init();
    curl_setopt($getToken, CURLOPT_URL, $tokenUrl);
    curl_setopt($getToken, CURLOPT_POST, 1);
    curl_setopt($getToken, CURLOPT_HTTPHEADER, array('Authorization: Basic ' . $auth));
	// get BearerToken
    curl_setopt($getToken, CURLOPT_POSTFIELDS, "grant_type=client_credentials");
    curl_setopt($getToken, CURLOPT_RETURNTRANSFER, 1);
	// extract BearerToken
    $token = json_decode(curl_exec($getToken));
    $token = $token->access_token;
    curl_close($getToken);
	// GET TWEETS
	// send request to torkenUrl using BearerToken
	$curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $quest);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization: Bearer ' . $token));
    $result = curl_exec($curl);
    curl_close($curl);
    $output = json_decode($result);
	$avatar_url = $output[0]->user->profile_image_url;
	// DEV
	// echo '<pre>';
	// echo print_r($output);
	// echo '</pre>';
?>

	<? // output ?>
	<? if (is_array($output) && count($output) > 0) : ?>
			<? $i = 1 ?>
			<? foreach($output as $tweet) : ?>
				<p <? echo ($i == 1 ? 'class="first"' : ''); ?>>
					<img src="<?= $avatar_url ?>">
					<? echo $tweet->text; ?>
		            <br>
					<time datetime="<? echo $tweet->created_at; ?>"><? echo date('d. F H:i', strtotime($tweet->created_at)); ?> Uhr</time>
		        </p>
				<? if(++$i > $amount) break ?>
			<? endforeach ?>
    <? endif ?>
<? } ?>

<? showtweets(3, 'flurinduerst', 'QIhs6TxhgiiMTu4Xt1ThZey9t', 'JWAObMVG2XLO4zlPZAOcX36m0lWO34e8uq4YzKWPo08M2M8c4n') ?>