Script PHP Twitter API Seperti who.unfollowed.me

 Tutorial, Tutorial PHP

Sebagai pengguna Twitter tentunya Anda tidak asing lagi dengan website Who.Unfollowed.Me . Website ini menyediakan fitur bagi Anda untuk melihat siapa saja pengguna twitter yang tidak melakukan Follow Balik (Follback) ke akun Twitter Anda. Selain itu website ini juga menyediakan fitur melihat siapa saja follower Anda yang belum Anda Follback.

Beberapa hari yang lalu , Saya mencoba membuat script PHP yang bekerja seperti fitur milik who.unfollowed.me . Dan alhamdullilah berhasil. Berikut ini adalah PHP class yang telah Saya buat dan terapkan di website Mybiru.com.

Pertama kita buat file php dengan nama : twitterclass.php dalam folder twitter. dengan isi:

[php]<?php

class twitterbiru{
function curl_data($uri){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $uri);
curl_setopt($ch, CURLOPT_REFERER, "");
curl_setopt($ch, CURLOPT_USERAGENT, ‘Twitter API Mybiru.Com’);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
private function set_data($twitter_id, $follower = true){
if($follower){
$foll = json_decode($this->curl_data(‘http://api.twitter.com/1/followers/ids.json?cursor=-1&screen_name=’.$twitter_id.”), true) or die(‘ada masalah diserver’);

}else{
$foll = json_decode($this->curl_data(‘http://api.twitter.com/1/friends/ids.json?cursor=-1&screen_name=’.$twitter_id.”), true) or die(‘ada masalah diserver’);

}
return $foll;
}

function follower($twitter_id){
return $this->set_data($twitter_id, true);
}

function following($twitter_id){
return $this->set_data($twitter_id, false);
}

function who_not_following_back($twitter_id){
$fwer = $this->follower($twitter_id);
$fwing = $this->following($twitter_id);

for($i=0;$i<count($fwing[‘ids’]);$i++){

$cek = in_array($fwing[‘ids’]
[$i], $fwer[‘ids’]);

if(!$cek){
$target[] = $fwing[‘ids’]
[$i];
}
}
return $target;
}
function me_not_following_back($twitter_id){
$fwer = $this->follower($twitter_id);
$fwing = $this->following($twitter_id);

for($i=0;$i<count($fwer[‘ids’]);$i++){

$cek = in_array($fwer[‘ids’]
[$i], $fwing[‘ids’]);

if(!$cek){
$target[] = $fwer[‘ids’]
[$i];
}

}

return $target;
}

function get_udata($user_id = array()){
$jml = count($user_id) > 100 ? 99 : count($user_id);
if($jml <> 0){
for($i=0;$i<$jml;$i++){
$tatadata .= $i == 0 ? $user_id[$i] : ‘,’.$user_id[$i];
}
$uri = ‘http://api.twitter.com/1/users/lookup.json?user_id=’.$tatadata.’&include_entities=true’;

$gata = json_decode($this->curl_data($uri), true);
return $gata;
}

}

}

?>[/php]

Untuk menggunakan class diatas, dapat Anda panggil dengan mudah. Contohnya saya buat seperti ini.
Silahkan Anda buat file php baru dengan nama : twitter.php pada folder yang sama, yang berisi:

[php]<?php

@include "./twitterclass.php";

/**Dalam contoh ini Saya akan mengecek siapa saja yang tidak memfollow balik akun twitter Saya yaitu @nizarzzz .***/

$coba = @new twitterbiru();
$data = $coba->who_not_following_back(‘nizarzzz’); // gunakan me_not_following_back($twitter_id) untuk melihat user yang belum anda follow balik

/**Untuk menampilkan jumlah hasil, Kita pakai fungsi count(); .**/

echo ‘
<p>
Ada ‘. count($data).’ user yang tidak memfollow balik akun anda
</p>’;

/**
Sekarang kita akan mencoba menampilkan data user yang telah Kita dapatkan
**/

$hasil = $coba->get_udata($data);

for($i=0;$i<count($data);$i++){
echo ‘
<div class="floatLeft clearLeft">
<img src="’.$hasil[$i]
[‘profile_image_url’].’" alt="’.$hasil[$i]
[‘screen_name’].’"/>
</div>

<div class="clearRight">
<div>
<a href="http://mobile.twitter.com/’.$hasil[$i]
[‘screen_name’].’">
‘.$hasil[$i]
[‘screen_name’].’
</a>
</div>
</div>
<div class="clearBoth"></div>’;
}

exit;

?>[/php]

Nah, Mesin untuk mengecek who.unfollowed.me sudah jadi. Selanjutnya kita akan menggabungkan script diatas dengan  Twitter Outh di artikel berikutnya. Contoh diatas dapat dilihat pada link demo ini http://klatenupdate.com/aplikasi/demo/twitter.php .

Pencarian Terakhir:

  • who unfollowed me