Constantes en PHP

Las Constantes en PHP se definen con la función define, que necesita que coloquemos dos elementos separados por una coma: el nombre de la constante y su valor..

Constantes en PHP | Aprender PHP y MySQL | Las Constantes en PHP se definen con la función define, que necesita que coloquemos dos elementos separados por una coma: el nombre de la constante y su valor.
COMPÁRTELO:

Las Constantes en PHP: pocos datos que no cambiaremos. | Una variable que no vamos a modificar

Algunas veces, necesitaremos que el valor que almacenamos en una variable no se modifique aunque cometamos un error.

Es decir, necesitamos que el valor almacenado permanezca idéntico, constante, hasta que el intérprete de PHP termine de procesar nuestra página.

En esos casos, en vez de una variable nos convendría usar una constante. A diferencia de las variables, es imposible definirles un valor mediante un operador de asignación (el signo igual), lo que facilita que “ni por error” alteremos su valor durante toda su vida útil, ya que siempre almacenarán el mismo valor.

Las Constantes en PHP se definen con la función define(), que necesita que coloquemos dos elementos separados por una coma: el nombre de la constante y su valor.

Veamos un ejemplo de su sintaxis:

<?php
define ("PI", 3.1415926);
define ("BR", "<br />");
define ("LIBRO", "PHP 6");
print(PI);
print(BR);
print(LIBRO);
?>

Muy importante: al momento de mostrar Constantes en PHP (con echo o print), las Constantes en PHP no van entre comillas (no son una cadena de texto a imprimir literalmente) ni llevan un signo de pesos por delante (no son una variable).

Además, al definirlas, habitualmente se escribe su nombre totalmente en MAYÚSCULAS para poder diferenciarlas a simple vista de las variables y de los textos literales. Recordemos lo importante que es facilitar la lectura de nuestro código.

Utilizaremos Constantes en PHP muy a menudo en nuestros proyectos, para almacenar datos de conexión a base de datos, usuarios y contraseñas, y cualquier otra información que necesitemos almacenar sin riesgos de que la modifiquemos en otra parte de nuestro código.

Includes de Constantes en PHP

Es una muy buena  idea definir todas las Constantes en PHP de un sitio Web en un archivo aparte, y luego incluir ese archivo (mediante include o require) en todas las páginas que necesiten utilizar esas Constantes en PHP. Es una técnica muy utilizada en sitios multilingües, que definen Constantes en PHP para los textos y usan un archivo para definir esos textos en cada idioma.

Veamos un ejemplo de esta técnica: imaginemos un sitio Web con versión en español y en inglés. Existirán dos archivos que almacenarán Constantes en PHP, uno de los textos en español y otro con los textos en inglés. Por ejemplo, dentro de la carpeta lenguajes crearemos un archivo llamado englis.php que contendrá solamente esto:

<?php
define ('NAVBAR_TITLE', 'My Account');
define ('HEADING_TITLE', 'My Account Information');
define ('OVERVIEW_TITLE', 'Overview');
define ('OVERVIEW_SHOW_ALL_ORDERS', '(show all orders)');
define (OVERVIEW_PREVIOUS_ORDERS', 'Previous Orders');
?>

Y, dentro de otro archivo denominado castellano.php colocaremos la traducción al español de esas mismas Constantes en PHP:

<?php
define ('NAVBAR_TITLE', 'Mi cuenta');
define ('HEADING_TITLE', 'Datos de mi cuenta');
define ('OVERVIEW_TITLE', 'Resumen');
define ('OVERVIEW_SHOW_ALL_ORDERS', '(Ver todos mis pedidos)');
define (OVERVIEW_PREVIOUS_ORDERS', 'Pedidos anteriores');
?>

De esta manera con indicar dento de cada página el idioma que se mostrará (tipicamente con una variable de sesión), podremos incluir el archivo de texto correspondiente al idioma elegido por el usuario.

Por ejemplo, si preparamos una página llamada cuenta.php que debe mostrar esos textos en castellano, su código será similar a esto:

<!DOCTYPE html>
<html>
<?php include ('lenguajes/castellano.php'); ?>
<head>
<title><?php print (NAV_TITLE); ?></title>
</head>
<body>
<h1><?php print (HEADIN_TITLE); ?></h1>
<h2><?php print (OVERVIEW_TITLE); ?></h2>
<ul>
<li><a href="show_all_orders.php"><?php print (OVERVIEW_SHOW_ALL_ORDERS); ?></a></li>
<li><a href="show_previous_orders.php"><?php print (OVERVIEW_PREVIOUS_ORDERS); ?></a></li>
</ul>
</body>
</html>

Notemos que no hemos incluido Constantes en PHP dentro de bloques de texto delimitados con comillas simples o dobles, como hacemos cuando queremos asignar un valor a una variable, ya que esto no funcionaría. Tampoco funcionaría colocarlas dentro de un echo o print junto con un texto envuelto entre comillas.

Veamos por qué:

<!DOCTYPE html>
<html>
<head>
<title>Constantes en PHP</title>
</head>
<body>
<h1><?php print ("Bienvenido a HEADING_TITLE"); ?></h1>
<!-- No se reemplazará por su valor, se escribirá el texto HEADING_TITLE tal cual -->
<h2><?php print ('Hola OVERVIEW_TITLE'); ?></h2>
<!-- Tampoco se reemplazará por su valor, se escribirá el texto OVERVIEW_TITLE tal cual -->
<?php
$comillasDobles="Texto entre comillas dobles, tampoco puede contener Constantes en PHP como HEADING_TITLE porque no se reemplazarán por su valor";
#comillas sencilas='Texto entre comillas simples, tampoco puede contener Constantes en PHP como HEADING_TITLE porque no se reemplazarán por su valor';
?>
<!-- No se reemplazarán las Constantes en PHP por su valor -->
</body>
</html>

El motivo es que, dentro de esos bloques de texto, al no estar identificado el nombre de la constante con ningún signo especial (como el signo $ que se utiliza para indicar que algo es una variable), al intérprete de PHP no tiene forma de detectar que se trata de una constante y no de una palabra común que, simplemente, tiene que escribir letra por letra. Para remediar esta limitación, utilizaremos la técnica denominada concatenación.

Por ejemplo:

$concatenando ="Texto concatenado con una constante '.HEADING_TITLE.' que ahora sí se reemplazará por su valor";

Así que siempre que intercalemos Constantes en PHP, debemos concatenarlas.

Constantes en PHP - Valores que no cambiamos ¿Cómo se declaran?

Las Constantes en PHP se definen con la función define, que necesita que coloquemos dos elementos separados por una coma: el nombre de la constante y su valor Son valores almacenados que permanecen idénticos sin alteraciones.
🤖

ChatGPT Gratis
Realiza preguntas sobre cualquier tema

¡Participa!

¡Compártelo en tus Redes Sociales!
Compartir en:

CITAR ARTÍCULO


Para tareas, investigaciones, tesis, libros, revistas, blogs ó artículos académicos

Referencia en Formato APA:

Delgado, Hugo. (2015).
Constantes en PHP.
Recuperado 19 de abril, 2024, de
https://disenowebakus.net/constantes-en-php.php

Profesor en la Universidad de Guadalajara

Hugo Delgado Desarrollador y Diseñador Web en Puerto Vallarta

Profesional en Desarrollo Web y Posicionamiento SEO desde hace más de 15 años continuos.
Contamos con más de 200 constancias y reconocimientos en la trayectoria Académica y Profesional, incluidos diplomados certificados por Google.

CONTINÚA APRENDIENDO

Menú categoría


Aprender PHP y MySQL

Siguiente


TAMBIÉN MERECE LA PENA VISITAR:

¿Te gustaría aprender más sobre Diseño Web?

Conoce todos los cursos y tutoriales que tenemos para ti completamente gratis
Aprender Diseño Web

¿Todavía no encuentras lo que necesitas?

Usa nuestro buscador interno para descubrir más información
Contenido relacionado:
 

Deja tu Comentario

PATROCINADOR

Tu negocio también puede aparecer aquí. Más información
Anunciate aquí

Tu navegador ha bloqueado la publicidad.
Por favor 🙏 permite visualizar los anuncios para poder acceder, gracias.