Una expresión es “cualquier cosa que contenga un valor”, por lo que casi cualquier cosa es una expresión.
Por lo tanto asignar el valor a una variable es una expresión:
$variable = 117;
Y también lo es una función más compleja:
function foo () {
$a = 12;
$b = 10;
$c = $a + $b;
return $c;
}
Pero no nos vayamos por las ramas, las funciones las veremos en los próximos posts…
Un operador es ‘algo‘ a lo que le entregamos una o más expresiones y nos devuelve otra expresión (que puede ser igual o distinta a las entregadas).
Pongamos un ejemplo sencillo, el operador +, si le entregamos los valores 3 y 5, nos devolverá el valor 8.
Hagamos una lista de los operadores básicos más utilizados:
Primero los operadores de artmética, estos son los operadores más conocidos por la mayoría de nosotros ya que son los mismos que utilizamos en matemáticas desde que eramos pequeños:
| -$a | negación | devuelve el opuesto de $a |
| $a + $b | suma | devuelve la suma de $a + $b |
| $a - $b | resta | devuelve la resta de $a + $b |
| $a * $b | producto | devuelve el producto de $a + $b |
| $a / $b | división | devuelve el cociente de $a entre $b |
| $a % $b | módulo | devuelve el resto de la división entera (ej. 7 % 2 = 1, ya que 7 dividido 2, nos da 3 y resto 1) |
Luego tenemos los operadores lógicos:
| $a and $b | Y | devuelve TRUE si $a y $b son TRUE |
| $a or $b | O | devuelve TRUE si cualquiera de ambas es TRUE |
| $a xor $b | O exclusivo | devuelve TRUE si una sola de $a y $be son TRUE |
| ! $a | No | devuelve TRUE si $a es FALSE y viceversa |
| $a && $b | Y | devuelve TRUE si $a y $b son TRUE |
| $a || $b | O | devuelve TRUE si cualquiera de ambas es TRUE |
También están los operadores de Incremento y Decremento, que son un poco particulares para quién los ve por primera vez, pero ya verás como con un ejemplo quedan bien claros ;)
| ++$a | pre-incremento | Incrementa $a en 1 y luego devuelve $a |
| $a++ | post-incremento | Devuelve $a y luego incrementa $a en 1 |
| –$b | pre-decremento | Decrementa $b en 1 y luego devuelve $b |
| $b– | post-decremento | Devuelve $b y luego incrementa $b en 1 |
Aquí te preguntarás cuál es la diferencia entre ++$a que incrementa y luego devuelve y $a++ que devuelve y luego incrementa, veamos un ejemplo para el que previamente debo hacer 2 aclaraciones que sólo por ahora serán “sacadas de la manga” y las explicaremos más adelante:
- cuando ponemos // (doble barra) en php, significa que desde ahí en adelante esa linea de código es un comentario del programador y no se interpretan ni se muestran al usuario.
- echo es una sentencia de php que muestra por pantalla una expresión o variable.
// recuerda, esto es sólo un comentario y los usare para explicar el código $a = 1; // $a vale 1 echo $a++; // se muestra 1 por pantalla y luego $a pasa a valer 2 echo ++$a; // primero $a pasa a valer 3 y luego se muestra en pantalla
Ahora es tiempo de los Operadores de comparación, veamos el cuadro:
| $a == $b | Igual | TRUE si $a es igual a $b |
| $a === $b | Idéntico | TRUE si $a es igual a $b y son de igual tipo |
| $a != $b | Diferente | TRUE si $a no es igual a $b (idem $a <> $b) |
| $a !== $b | No idénticos | TRUE si $a no es igual a $b o si son de diferente tipo |
| $a < $b | Menor que | TRUE si $a es menor que $b |
| $a > $b | Mayor que | TRUE si $a es mayor que $b |
| $a <= $b | Menor o igual | TRUE si $a es menor o igual que $b |
| $a >= $b | Mayor o igual | TRUE si $a es mayor o igual que $b |
Por último y para terminar con los las expresiones y operadores tenemos el operador de cadena.
Este es el ‘.’ (el punto), y lo que hace es concatenar o unir, dos cadenas de texto.
Así por ejemplo si tenemos “Hola “.”Mundo”, nos da como resultado una única cadena que dice “Hola Mundo”.
$a = "Mi nombre "; $b = "es Marcelo"; $c = $a . $b; // $c contendrá el texto "Mi nombre es Marcelo"
Bueno, espero que te haya sido útil, y como digo siempre, puedes publicar cualquier duda que te surja en los comentarios.





El 23 de Febrero de 2008, Joan dijo:
Yo tengo una duda:
Arriba has puesto
function foo () {
¿Por qué has puesto foo? ¿Significa algo en especial o da igual lo que pongas?
El 23 de Febrero de 2008, Marcelo dijo:
foo en dicho caso es el nombre de la función, puede ser cualquier nombre… foo se utiliza muchas veces como ejemplo, pero bien podría haberse llamado sumar() o sumadosnumeros()
El 23 de Febrero de 2008, Joan dijo:
A vale, entonces el nombre de una función no tiene importancia, sino lo que contiene, ¿verdad?
El 23 de Febrero de 2008, Marcelo dijo:
Exactamente, el nombre simplemente sirve para identificarla y llamarla, en general es una buena práctica de programación el ponerle nombre relativos a su funcionamiento, ej: crearMenu() es mejor nombre que funcion1() para una función que crea el menu, o imprimir() sería un buen nombre para una función que imprime texto ;)
El 23 de Febrero de 2008, Joan dijo:
Pero es que en wordpress hay plugins que para que aparezcan hayq que poner una funcion en concreto, sin nada más.
De ahi que yo pensara que el nombre de la funcion es algo mas que para saber que hace, porque según su nombre mostraba el contenido de un plugin u otro, sin tener nada más en los parentesis ni nada, solo el nombre del plugin ya lo muestra. ¿Como sabe wordpress que tienen que mostrar viendo solo el nombre?
El 24 de Febrero de 2008, Marcelo dijo:
Si claro, o sea, cuando yo dije que el nombre puede ser cualquiera, me refería al programar un script (o un plugin para wordpress), puedo elegir el nombre que quiera, pero luego al llamar a esa función (ya programada) ahi se debe utilizar el nombre que el programador le dió, o sea para llamar al titular usamos wp_head() porque el programador eligió ese nombre.. podría haber elegido lo que el hubiera querido, pero luego de que se definió la variable con un nombre, si tenemos que utilizar ese nombre especificamente para llamarla ;)
Espero haber aclarado un poco más… :)
Saludos!
El 24 de Febrero de 2008, Joan dijo:
Un poco más claro está, pero me falta una cosa: ¿Dónde pone a qué hace referencia cada función?
Es decir, el programador decidió que se llamara así la función, pero ¿dónde lo puso?
Gracias por tu ayuda, esto cada día se ve más claro.
El 25 de Febrero de 2008, jhonn05 dijo:
las funciones se declaran mediante la sentencia function.
En este caso
function foo () { contenido de la función}
El 25 de Febrero de 2008, Marcelo dijo:
En todos los archivos del sistema de wordpress (functions.php, wp-includes, etc…) ;)
El 26 de Febrero de 2008, Joan dijo:
En tonces, cuano se crea un plugin, por ejemplo el "Cat_Title", que se utiliza para modificar el título que se muestra por página (el título, no la url, que para eso estan los permalinks) ¿modifica todo wordpress para decirle que cuando pongas "<?php ca_title(); ?>" aparezca el título?
El 28 de Febrero de 2008, Marcelo dijo:
El caso de los plugins es un tema particular, ya que hay plugins que modifican, otros que "pasan por arriba" otras funciones y otros simplemente crean una nueva función y nos la dejan disponible cuando antes no estaba…
No se como funciona ese plugin en particular, pero probablemente defina la función ca_title() y tu puedas llamarla desde los archivos del theme y tengas esa "nueva funcionalidad" que sin el pulgin no tendrías ;)