El blog de Javielinux Usuario de Linux, Android developer, programador de aplicaciones web y experimentando con HTML5, CSS3 y Javascript

Accediendo a Twitter desde PHP

Twitter

Esto de Twitter realmente es un vicio. Creo que a todos nos pasa más o menos igual. Una vez lo conoces piensas que es una tontería, pero cuando empiezas a usarlo empiezas a picarte. Últimamente con mi nuevo móvil y mi tarifa de datos que me hace estar online el 100% del día, veo cada vez más interesante esto de mostrar lo que haces en cada momento.

Hoy me he animado y he puesto en la barra de la derecha el último mensaje enviado a Twitter y para ello he tenido que buscar un cliente en PHP. He usado este creado por Arc90 que es muy sencillo y te muestra toda la información que necesitas.

El cliente PHP sólo lo uso para que me devuelve un XML con el contenido de Twitter, luego uso DOMDocument para acceder a la información.

El código para poder acceder al último mensaje enviado sería este:

require_once('lib/Twitter.php');

$twitter = new Arc90_Service_Twitter('usuario', 'clave');

try
{ 
    $response = $twitter->getUserTimeline('xml');

    $doc = new DOMDocument();
    $doc->loadXML( $response->getData() );

    $texts = $doc->getElementsByTagName( "text" );
    echo $texts->item(0)->nodeValue;

    if($response->isError())
    {
        echo $response->http_code . "\n";
    }
}
catch(Arc90_Service_Twitter_Exception $e)
{
    print $e->getMessage();
}

Tienes toda la documentación necesaria en la web del proyecto y si quieres puedes seguirme en mi Twitter.

Comentarios

Jaluro dice:
¿Y qué te parece si consiguieses hacer clicables los enlaces que se muestran en tu último mensaje en Twitter?

Llevo un tiempo buscando algún plugin que lo haga y he acabado dándome por vencido.

Ciao
javielinux dice:
¿¿Así??
Jaluro dice:
Qué rápido, tío!!

Muy bueno, sí, así.
javielinux dice:
jejeje. Era una bromilla ;-)

Es simplemente una función que tengo desde hace mucho tiempo y con expresiones regulares te pone los enlaces HTML a todo lo que empiza por http://

Te la copio aquí a ver como queda:

function writeLinksHTML ($chain) {

$result = $chain;

$result = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)', '\\1', $result);

$result = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+)', '\\1\\2', $result);

return $result;

}
Jaluro dice:
Gracias, aunque creo que me voy a quedar con este plugin tan majo:

http://tinyurl.com/bunm8q

Ciao

Escribir un comentario