Utiliser cURL au lieu de file_get_contents() avec TinyURL en PHP
TinyURL est un service permettant de raccourcir les URL afin de pouvoir les publier sur des sites comme Twitter qui ne permettent des messages que 140 caractères maximum.
Par exemple https://www.aymericlagier.com peut être raccourci en http://tinyurl.com/ms75l4. Pratique pour les URL à rallonge.
L’API de TinyURL permet de générer des URL raccourcies automatiquement via un script PHP. Pour obtenir l’URL raccourcie, il suffit de faire :
<?php
$url = file_get_contents(‘http://tinyurl.com/api-create.php?url=https://www.aymericlagier.com’);
echo $url;
?>
Cependant sur certains hébergements comme 1&1, la fonction file_get_contents() est désactivée, ce qui rend impossible l’utilisation du script ci-dessus. Il existe une solution pour contourner le problème, cURL :
<?php
// URL que l’on souhaite raccourcir
$maketiny = ‘https://www.aymericlagier.com’;
function make_tiny($url) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL,’http://tinyurl.com/api-create.php?url=’.$url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
$tinyurl = make_tiny($maketiny);
echo $tinyurl;
?>
Source : Papermashup