20090520

How to emulate parse_ini_string in PHP5.2


If you have ever wanted to parse a ini file from "not-a-file" you may have
found the parse_ini_string function, but it only comes in PHP version 5.3 or newer.

Here you have a piece of code that has two options, the easy one, if parse_ini_string is present, use it, if not it creates a temporary file, put some content on it, parse_ini_file on that file and then delete the file.



if (function_exists('parse_ini_string'))
{// php 5.3
$return_ini_array=parse_ini_string($ini_file_string);
}
else
{// php anterior a 5.3
$temp_file_name = tempnam('/tmp', 'temp_lang_');
$handle = fopen($temp_file_name, "w");
fwrite($handle, $ini_file_string);
fclose($handle);
$return_ini_array=parse_ini_file($temp_file_name);
unlink($temp_file_name);
}



It gets an string with the ini-file-format called $ini_file_string and returns an array with the parsed elemements of the input string ($return_ini_array).

We'll that's not perfect, but it works !



PD: Com desestressa programar, algu vol anar a visitar clients mentre jo em quedo programant a la oficina ?


:)

20090427

CAPTCHAS cachondos, avui, follo a gmail

Quina va ser la meva sorpresa l'altre dia, al crear una conta nova de gmail, al veure aquest CAPTCHA.





Hoy FOLLO con FATATAS !!!

Impressionant !

20090423

Process search string before sending to a match against

It's Sant Jordi and I want to go home NOW!

but this peace of code will be helpful, how to process a standard search string to do a typical and search for each word.


$text=$search;

if (stripos($text, '"')===false)
{// normal search, there are no "
$text=str_replace('+', '', $text);
$text=str_replace('-', '', $text);
$text=str_replace('*', '', $text);
$text=str_replace('\'', '', $text);
$text=str_replace('"', '', $text);
$text=str_replace('>', '', $text);
$text=str_replace('<', '', $text);

$arr=explode(" ", $text);
$text='';
foreach ($arr as $elem)
{
$text.='+'.$elem.'* ';
}
}



Simply use $search as the input (obviously sanitized) and take $text as output, if there are some double quotes, we simply do nothing assuming an exact match query.

It's not perfect, but works for my actual project.

I don't have more time, happy Sant Jordi to all !

20090318

Per fi copy&paste a l'iPhone



Ahir Apple va anunciar finalment que a la versió 3.0 del iPhoneOS existirà la posibilitat de fer copy&paste entre aplicacions, a part s'han anunciat moltes més millores com la posibilitat de enviar i rebre MMS i millores al SDK i a la AppStore.

Clarament Apple ha pres posicions per lluitar contra el early-anticipated Palm PRE (WebOS)

NOTA: JA ERA HORA !

Més informació:
Canal PDA
CNET news.com
The New York Times
The Washington Post

20090316

Cajeros para despistados



Hace aproximadamente un mes, salia a cenar y saque 70 euros para poder pagar la cena. Cual fue mi sorpresa al ir a pagar cuando descubrí que en realidad los 70 euros no estaban en mi cartera. Reflexionando me di cuenta que con el despiste general que llevo con tanto lío me había dejado el dinero en el cajero y me había ido tan campante con mi tarjeta pero dejando el dinero en la máquina.

Suerte que tenia confianza con la gente que cenaba y no había compromiso, me dejaron algunos euros y llege a pagar la cena sin más incidentes, sólo con una acuciante sensación de SER UN GRANDÍSIMO GILIPOLLAS !

Al día siguiente, siguiendo el refrán de "de lo perdido, saca lo que puedas" me dirigí, sin muchas esperanzas, a la sucursal de la que dependía el cajero (Banesto).

Allí les explique el caso, pasando bastante vergüenza, pero el cajero (muy amable) me contó que es un caso bastante habitual, "Sucede más de lo que te imaginas", me dijo. Entonces me contó que el cajero tiene un mecanismo anti-despistados, primero, emite un pitido (este primer sistema ya me había salvado más de una vez) y si al cabo de unos segundos prudenciales el usuario no ha retirado el dinero este procede a recuperar el dinero y generar un registro de la incidencia.

El propio cajero (el humano) me confirmo, comprobando mi número de tarjeta, que justamente era lo que había sucedido, el único caso que no esta contemplado es, que salgas deprisa del cajero dejándote el dinero y que aparezca alguien al poquísimo tiempo y se lo lleve (antes de que la máquina lo recupere)

Desde ese día he tenido que llamar varias veces a mi banco para que me aplicasen el apunte correctivo, cosa que han tardado casi un mes en hacer, pero al final lo he conseguido.

Así que ya sabéis, si un día os dejáis dinero en el cajero, no lo deis por perdido, todavía tenéis la posibilidad de recuperarlo si lo sacasteis de un cajero a prueba de despistes.

20090315

Contra la extinción silenciosa de los pelirrojos


FACTS:

  • El gen pelirrojo es tremendamente recesivo
  • Los no-pelirrojos se tiñen, convirtiendose en falsos-pelirrojos


Conclusión:
  • Los pelirrojos se extinguirán en el futuro
  • Nadie se dará cuenta, ya que continuarán existiendo un gran número de pelirrojos falsos


Por eso he decidido crear un grupo en facebook para controlar científicamente la extinción silenciosa de los pelirrojos, fijaos en sus cejas y en el color de pelo de otras zonas de su cuerpo.

Para que los pelirrojos no se extingan sin pena ni gloria, antes incluso que el Lince Ibérico !

Página de Facebook

20090227

O'Reilly Webcast: Developing Applications for Palm webOS

Cada cop m'esta molant mes el Mojo SDK, podeu veure el primer video per developers



També podeu reservar el llibre de Palm WebOS de O'Reilly o llegir el primer capítol gratuitament

M'ha agradat especialment de la demo que el Mojo SDK sigui Model-View-Controller, que els serveis del hardware es cridin via URLs de l'estil palm:// i implementis una funcio de callback pel success o el error i la facilitat d'utilitzar html standard amb algo de mojo i css.

Problema, esta molt basat amb prototype, MOC pels ultrafans del jQuery, encara que diuen que sera compatible tot el core ja esta fet amb prototype :(

A la ronda de preguntes han sortit alguns dels problemes que ja es veuen a venir:
- Full screen apps
- Posibilitat d'accedir directament al hardware amb un llenguatge de mes baix nivell (per jocs, players, etc)
- Que passa amb el codi de les APPS que creis ? Al ser tot javascript+html+css sera tot visible i per tant, facilment copiable, com la part visible de les aplicacions web. I es més, serà modificable per l'usuari ? podra entrar al seu device i modificar codi ?

El tema s'esta possant interessant, la veritat !

20090211

Últims artícles tekkies que he trobat interessants

Últims artícles que he trobat interessants:

32 Tips to speed up your mysql queries
Sanitize and validate data with php filters
Working with the jcrop plugin
New JQuery plugin imgpreview

Ho penjo sobretot perqué hi ha algún que encara no m'he pogut llegir del tot i si s'em perd la sessió del Firefox em posaré de molt mala llet.

A més a més, així els comparteixo :)