Revision: 35853
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 14, 2010 23:39 by stamba
Initial Code
<?php /* * To use Bit.ly service you need to enter your Username and API Key below * To use Adf.ly service you need to enter your User ID and API Key below */ // Get the args $text = $_POST['text']; $shortener = $_GET['shortener']; // Explode the submited text $pieces = explode(" ", $text); // For each element in array check if it is a link, shorten and replace it in passed text foreach ($pieces as $piece) { if (preg_match("/(^|[\n ])([\w]*?)((ht|f)tp(s)?:\/\/[\w]+[^ \,\"\n\r\t<]*)/is", $piece)) { $newsmallurl = call_shortener($shortener, $piece); $text = str_replace($piece, $newsmallurl, $text); } } // Print final text (with shortened URLs) and send it to Twitter as a status echo $text . "<br /><br />"; $textenc = urlencode($text); echo "<a href='http://twitter.com/home?status=$textenc'>Tweet this!</a>"; // Choose the correct function based on the passed argument function call_shortener($shortener, $passedurl) { // Determine which function to call if ($shortener == 'tinyurl') { $shorturl = shortTinyURL($passedurl); } elseif ($shortener == 'bitly') { $shorturl = shortBitly($passedurl); } elseif ($shortener == 'supr') { $shorturl = shortSupr($passedurl); } elseif ($shortener == 'isgd') { $shorturl = shortIsgd($passedurl); } elseif ($shortener == 'l4uin') { $shorturl = shortL4uin($passedurl); } elseif ($shortener == 'toly') { $shorturl = shortToly($passedurl); } elseif ($shortener == 'adfly') { $shorturl = shortAdfly($passedurl); } elseif ($shortener == 'kwnme') { $shorturl = shortKwnme($passedurl); } // Return the shortened URL return $shorturl; } // TinyURL shortener function shortTinyURL($ToConvert) { $short_url = file_get_contents('http://tinyurl.com/api-create.php?url=' . $ToConvert); return $short_url; } // Bit.ly shortener function shortBitly($ToConvert) { $bitlylogin = 'YOUR_USERNAME'; $bitlyapikey = 'YOUR_API_KEY'; $bitlyurl = file_get_contents('http://api.bit.ly/shorten?version=2.0.1&longUrl=' . $ToConvert . '&login=' . $bitlylogin . '&apiKey=' . $bitlyapikey); $bitlycontent = json_decode($bitlyurl,true); $bitlyerror = $bitlycontent['errorCode']; $short_url = $bitlycontent['results'][$ToConvert]['shortUrl']; return $short_url; } // Su.pr shortener function shortSupr($ToConvert) { $short_url = file_get_contents('http://su.pr/api?url=' . $ToConvert); return $short_url; } // Is.gd shortener function shortIsgd($ToConvert) { $short_url = file_get_contents('http://www.is.gd/api.php?longurl=' . $ToConvert); return $short_url; } // L4u.in shortener function shortL4uin($ToConvert) { $short_url = file_get_contents('http://www.l4u.in/?module=ShortURL&file=Add&mode=API&url=' . $ToConvert); return $short_url; } // To.ly shortener function shortToly($ToConvert) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://to.ly/api.php?longurl=".urlencode($ToConvert)); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_HEADER, 0); $shorturl = curl_exec ($ch); curl_close ($ch); return $short_url; } // Adf.ly shortener function shortAdfly($ToConvert) { $APIKey = 'YOUR_API_KEY'; $UserID = 'YOUR_USER_ID'; $ShortType = 'int'; // or 'banner' $short_url = file_get_contents('http://adf.ly/api.php?key=' . $APIKey . '&uid=' . $UserID . '&advert_type=' . $ShortType . '&url=' . $ToConvert); return $short_url; } // Kwn.me shortener function shortKwnme($ToConvert) { $short_url = file_get_contents('http://kwn.me/t.php?process=1&url=' . $ToConvert); return $short_url; } ?>
Initial URL
http://forr.st/~Cyl
Initial Description
This script parses the entered text and it gets all URLs from the text. It will then shorten those URLs and replace the long URLs with shortened ones in the text. If you need only the Shortener Services script, take a look at this snippet <a href="http://snipplr.com/view/44115/shortener-services/">http://snipplr.com/view/44115/shortener-services/</a>
Initial Title
Find URLs In a Text and Shorten Them
Initial Tags
url, text
Initial Language
PHP