Partiendo como base la función google(); he creado una clase para mostrar el primer resultado en 11 buscadores.Todos funcionan con el mismo patrón, usa dos expresiones regulares, una para encontrar los resultados y la otra para obtener el enlace y el titulo.
Lista de buscadores:
- Google
- Yahoo
- AlltheWeb
- MsnSearch
- a9
- Flickr
- Technorati
- Del.icio.us
- Bloglines
- Bitacoras.com
- Wikipedia
La función a llamar devuelve un objeto con 4 variables: La pagina en donde busca (search), el titulo encontrado (title), la URL encontrada (url) y el numero de resultados de la búsqueda (results).
Ejemplo:
$google = search::google('icebeat');
echo $google->title.':'.$google->url;
Cuando queremos extraer el ultimo elemento de una matriz en php utilizamos la función array_pop , esta función nos devuelve el valor del ultimo elemento. El problema es que no puedes obtener el indice.
Como en CSSing se manejan muchos arrays he tenido que crear una función para ayudarme a obtener los indices.
Actúa igual que array_pop() pero en el caso de contener un indice no numérico devuelve un array y en caso de no serlo retorna el valor.
Ejemplo:
//indice no numerico
$stack= array("uno" => "green", "dos" => "brown", "tres" => "blue");
print_r($stack);
$end = array_ipop($stack);
print_r($end);
print_r($stack);
$end devuelve
array("tres"=>"blue");
Cuando salió una de las versiones de firefox con lector de feeds se puso de moda la etiqueta link con la url del xml, esta etiqueta proporcionaba añadirlo fácilmente al lector.
Pues con esta función podemos conseguir el feed con solo pasarle la url de la pagina y en caso de no encontrarla devolverá un valor vacío.
Nueva versión de easyXML con mejoras en el código y en el constructor.
Ahora se crea solo el objeto ya que es posible moverse por los ítems que contenga un array.
El zip contiene un ejemplo de como es la estructura para comenzar a utilizar la clase, aunque con un simple print_r(); ves el árbol XML.
Update: Añadido un trim() para eliminar los espacios que pueda tener el archivo XML.
Nueva versión de CSScompiler con el código mejorado y con soporte para la regla @media.
Más info en CSScompiler .