Los acortadores de URL han explotado en popularidad en los últimos años, en gran parte debido
a la naturaleza social de la web y al deseo de compartir enlaces.
Zend_Service_ShortUrl proporciona una API para acceder a varios
servicios distintos de acortamiento de URL, con la capacidad tanto de crear URLs cortas como de
recuperar la URL original.
Los adaptadores proporcionados incluyen:
Zend_Service_ShortUrl_JdemCz, que accede al servicio jdem.cz.Zend_Service_ShortUrl_TinyUrlCom, que accede al servicio tinyurl.com.Zend_Service_ShortUrl_MetamarkNet, que accede al servicio metamark.net.Zend_Service_ShortUrl_IsGd, que accede al servicio is.gd.Zend_Service_ShortUrl_BitLy, que accede al servicio bit.ly.
Utilizar uno de los servicios de acortamiento de URL es sencillo. Cada acortador de URL sigue una
interfaz simple que define dos métodos: shorten() y
unshorten(). Instancie la clase y llame al método
correspondiente.
$tinyurl = new Zend_Service_ShortUrl_TinyUrlCom();
// Shorten a URL:
$short = $tinyurl->shorten('http://framework.zend.com/'); // http://tinyurl.com/rxtuq
// Inflate or unshorten a short URL:
$long = $tinyurl->unshorten('http://tinyurl.com/rxtuq'); // http://framework.zend.com/
-
shorten($url); -
Toma la
$urlproporcionada y la pasa al servicio con el fin de obtener una URL acortada.Si la
$urlproporcionada no es válida, se lanzará una excepción. -
unshorten($shortenedUrl); -
Toma la
$shortenedUrlproporcionada y la pasa al servicio con el fin de obtener la URL original.Si la
$shortenedUrlproporcionada no es válida, se lanzará una excepción. -
setHttpClient(Zend_Http_Client $httpClient); Use este método para establecer el cliente HTTP utilizado para comunicarse con el servicio.
-
getHttpClient(); Use este método para acceder al cliente HTTP asociado al servicio. Por defecto, esto cargará de forma diferida (lazy-load) una instancia de
Zend_Http_Clientsi aún no hay ningún cliente asociado.
La API de bitly requiere que las credenciales de autenticación se proporcionen como argumentos de consulta. Para comenzar, necesitará una cuenta de usuario bitly gratuita y una apiKey. Regístrese en: http://bitly.com/a/sign_up
bitly actualmente también admite el borrador de especificación OAuth 2. Puede proporcionar un
token de acceso OAuth generado a Zend_Service_ShortUrl_BitLy
usando setOAuthAccessToken o como argumento del constructor.
$bitly = new Zend_Service_ShortUrl_BitLy('username','apiKey');
// Shorten a URL:
$short = $bitly->shorten('http://framework.zend.com/'); // http://bit.ly/15Oe0
// Inflate or unshorten a short URL:
$long = $bitly->unshorten('http://bit.ly/15Oe0'); // http://framework.zend.com/