Ver índice
Constantes

        Ocultar índice  

   Índice de contenidos
   Instalación en Windows
   Instalación en Ubuntu
   Servidores seguros
   Páginas dinámicas
   Sintaxis básica
   Operaciones
   Arrays
   Formatos de presentación
   Operadores
   Bucles
   Extraer y ord. información
   Funciones
   Ficheros externos
   Imágenes dinámicas
   Gestión de directorios
   Cookies y sesiones
   Clases y objetos
   Ficheros en formato PDF
   Bases de datos MySQL
   PHP y XML
   PDO - Bases SQLite / MySQL
   MySQL a traves de misqli
   Algo de JavaScript y AJAX


Definir constantes

Una constante es un valor –un número o una cadena– que no va a ser modificado a lo largo del proceso de ejecución de los scripts que contiene un documento. Para mayor comodidad, a cada uno de esos valores se le asigna un nombre, de modo que cuando vaya a ser utilizado baste con invocar ese nombre.

Cuando ponemos nombre a una constante se dice que definimos esa constante. En PHP las constantes se definen mediante la siguiente instrucción:

define("nombre","valor");

dónde nombre es una cadena que contiene la palabra que pretendemos asignar como tal nombre y valor el contenido que pretendemos asignar a esa constante. El valor debe escribirse entre comillas, salvo que se trate de una constantes numérica que no las requiere.

Los valores asignados a las constantes se mantienen en todo el documento, incluso cuando son invocadas desde una función.

Si se realizan operaciones aritméticas con constantes tipo cadena, y su valor comienza por una letra, PHP les asigna valor cero.

Si una cadena empieza por uno o varios caracteres numéricos, al tratar de operarla aritméticamente PHP considerará únicamente el valor de los dígitos anteriores a la primera letra o carácter no numérico.

El punto entre caracteres numéricos es considerado como separador de parte decimal.

Tal como puedes ver en el código fuente del ejemplo, es posible definir constantes a las que se asigne como valor el resultado de una operación aritmética.

Ampliando echo y print

Mediante una sola instrucción echo pueden presentarse de forma simultánea (en la ventana del navegador del cliente) varias cadenas de caracteres y/o constantes y variables. Basta con ponerlas una a continuación de otra utilizando una coma como separador.

La forma anterior no es la única –ni la más habitual– de enlazar elementos mediante la instrucción echo. Si en vez de utilizar la una coma usáramos un un punto (el concatenador de cadenas) conseguiríamos el mismo resultado.

Cuando enlacemos elementos distintos –cadenas, constantes y/o números– hemos de tener muy en cuenta lo siguiente:

Las instrucciones print también permiten concatenar cadenas en una misma instrucción. En este caso solo es posible usar un punto como elemento de unión. Si pusiéramos comas –como podemos hacer con echo– PHP nos daría un error.

Un ejemplo con constantes

<html><head><title>Constantes</title></head>
<body>
<?php
/* Definiremos la constante EurPta y le asignaremos el valor 166.386 */
define("EurPta",166.386);
/* Definiremos la constante PtaEur asignándole el valor 1/166.386 
   En este caso el valor de la constante es el resultado
   de la operación aritmética dividir 1 entre 166.386*/
define("PtaEur",1/166.386);
/* Definimos la constante Cadenas y le asignamos el valor:
   12Esta constante es una cadena*/                 
define("Cadena","12Esta constante es una cadena");
/* Definimos la constante Cadena2 y le asignamos el valor:
   12.54Constante con punto decimal*/ 
define("Cadena2","12.54Constante con punto decimal");

/* Comprobemos los valores.
   Observa la nueva forma en la que utilizamos echo
   Lo hacemos enlazando varias cadenas separadas con 
   punto y/o coma, según se trate de echo o de print */
 
echo "Valor de la constante EurPta: ", EurPta, "<BR>";
echo "Valor de la constante PtaEur: ". PtaEur . "<BR>";
print "Valor de la constante Cadena: " . Cadena . "<BR>";
print "Valor de la constante Cadena x EurPta: " . Cadena*EurPta ."<br>";
print "Valor de la constante Cadena2 x EurPta: " . Cadena2*EurPta ."<br>";


echo "Con echo los números no necesitan ir entre comillas: " ,3,"<br>";
print "En el caso de print si son necesarias: " . "7" . "<br>";
print ("incluso entre paréntesis necesitan las comillas: "."45"."<br>");
print "Solo hay una excepción en el caso de print. ";
print "Si los números van en un print independiente no necesitan comillas ";
print 23;

# Pondremos la etiqueta de cierre del script y escribiremos
# una línea de código HTML
?>

<br>Ahora veremos los mismos resultados usando la function prueba<br><br>

<?php

# Estamos dentro de un nuevo script abierto por el  <? anterior

/* Aunque aún no la hemos estudiado, escribiremos una función
    a la que (tenemos que ponerle siempre un nombre) 
	vamos a llamar prueba()
  Lo señalado en rojo es la forma de indicar el comienzo
    y el final de la funcion
  Lo marcado en azul son las instrucciones 
         que deben ejecutarse cuando la función prueba()
         sea invocada */

 function prueba(){
           echo "Valor de la constante EurPta: ". EurPta . "<BR>";
           print "Valor de la constante PtaEur: ". PtaEur. "<BR>";
           echo "Valor de la constante Cadena: ", Cadena , "<BR>";
           print ("Valor de la constante Cadena x EurPta: " . 
			                      Cadena*EurPta . "<br>");
           print ("Valor de la constante Cadena2 x EurPta: " . 
			                      Cadena2*EurPta . "<br>");
   }

# Las funciones solo se ejecutan cuando son invocadas

/* La función anterior no se ejecutará hasta que escribamos
   una línea –como esta de abajo– en la que ponemos 
   únicamente el nombre de la función: prueba()
        */
?>

<?php
prueba();
?>
</body>
</html>
Ver ejemplo11.php

  ¡Cuidado!  

Presta mucha atención a la sintaxis. Olvidar los «;» o no poner unas comillas suelen ser la causa de muchos mensajes de error.