Usuarios conectados: 5 Cargando documento...
Buscar:

Geo Visitors Map
RSS
22/04/2009:  PHP: Cuando lo verdadero es falso (y al revés)

Siguiendo las curiosidades de PHP que la gente de Q suele postear en su blog, hoy añado yo una que me acabo de reencontrar: Lo que parece verdadero es en realidad falso:

Tenemos este fragmento:

<?php
$test="hola";
if (strcmp($test,"hola")) echo "coinciden!";
?>

El sentido más o menos común diría que existe coincidencia y por lo tanto el mensaje aparecería, ¿verdad? Pues va a ser que no.

La curiosidad reside en que strcmp no devuelve true or false, sino un valor numérico dependiendo de la comparación. Dice el manual de PHP:

strcmp(string $str1, string $str2):
Returns < 0 if str1 is less than str2; > 0 if str1 is greater than str2, and 0 if they are equal.

Por lo tanto el resultado de la comparación anterior es 0, y 0 es igual a falso:

A number (either integer or floating-point) converted into a Boolean becomes false if the original value is zero, and true otherwise.

Así que, lo que parecía verdadero no lo era tanto (o quizá si aunque devuelva cero, pero si cero es falso entonces no...). La solución más sencilla es negarlo (aunque mentalmente lo haga más complicado):

<?php
$test="hola";
if (!(strcmp($test,"hola"))) echo "coinciden!";
?>

21/04/2009:  Changes in PHP Help extension

Lots of people have complained about the 'hh.exe cannot be opened' when using the extension PHP Help. Well, after some tests the problem has been found.

  • The good news: Version 7.1.0 works with DWCS3 and CS4 both on Vista and XP
  • The bad news: The format of the chm file generated by php.net has changed, so I had to decompile and recompile it in a more useful format for the extension to work (changing paths and moving folder). So, from now on, you won't be able to update the chm file, you will have to live with the one included with the extension.

That is, you won't find the 'install o upgrade php help...' command because it's no longer there.

For the same reason, version 5.0.2, available for older versions of DW has been discontinued. It won't work with current chm files. If you are VERY interested in this version, please drop me an email and I'll sent you both the extension and a working chm file

You can read more about the extension here

TECNORAMA es simplemente una página personal. No sirve ni de promoción del autor ni cosas por el estilo.
Todos los códigos, textos y tutoriales son de libre uso mientras se mencione al autor (no es mucho pedir)
Para contactar, puedes enviarme un e-mail a tecnorama@hotmail.com