No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Variables y constantes

11/24
Recursos

Las variables y constantes permiten almacenar datos durante la ejecución de nuestro programa. El valor de una variable puede ser modificada, pero el de una constante no.

Variables

Es algo que varía, es decir, es capaz de guardar cualquier cosa en su interior y puede modificar, sustituir o eliminar dicho elemento que esté guardando en cualquier momento.

Podemos verlas como cajas en las que podemos almacenar cualquier tipo de información:

Podemos ver a las variables como cajas

Estructura de una variable en PHP

La declaración de una variable (en PHP) está conformada por 3 elementos principales:

  1. Signo dólar: se empieza con un signo de dólar $.
  2. Nombre de variable: seguido al signo de dólar colocamos el nombre de la variable. Para PHP, cualquier cosa que este después de un signo de dólar $ será un nombre.
  3. Asignación: se le asigna el valor que tendrá la variable.

$nombre = "Carlitos";

Constantes

  • Es algo que nunca cambia, es decir, una vez que se le asigne un valor ya no es posible modificarlo ni sustituirlo.
  • Una constante siempre mantendrá su valor intacto desde el momento en que se declara.

Para definir constantes en PHP normalmente se hace de la siguiente manera:


define("NUMERO_PI", 3.14);  // Constante: NUMERO_PI = 3.14

Hay que tener en cuenta algunos aspectos:

  • En el primer parámetro del método define() colocamos el nombre de la constante entre comillas y en el segundo parámetro el valor que tendrá. Deben estar separados por una coma , los parámetros.
  • Es buena práctica escribir el nombre de las constantes en mayúsculas.
  • NO es necesario usar el signo de dólar si quieres usar una constante. Se utiliza el nombre tal cual.
  • NO puedes definir otra constante con el mismo nombre:

define("NUMERO_PI", 3.14); 
define("NUMERO_PI", 100);
  • NO puedes reasignar el valor de una constante:

define("NUMERO_PI", 3.14);
NUMERO_PI = 40;

Contribución creada por: Martín Álvarez.

Aportes 23

Preguntas 4

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

A partir de la version 5.3.0 para definir una constante se puede utilizar la palabra CONST seguido de el nombre de la constante, es su uso mas comun en la actualidad.

Resumen:

  • Una varible empieza simpre con un signo de $ y podemos cambiar su valor:
    $numero_1 = 8;
    $numero_2 = 7;
    
    echo $numero_1 + $numero2;
    
  • Una constante no se puede cambiar su valor, como buena practica se crea en mayuscula y se define de la siguiente forma:
    define("NUMERO_PI", 3.14);
    
    echo NUMERO_PI;
    

¡Esto vale oro!

Se nota la diferencia entre una buena explicación de las bases de php, a pasar horas en stackoverflow descifrando código mas de la cuenta por no tener buenas bases.

Otra forma de definir constantes

const PI = 3.14159;
echo PI;

Resumen

Las variables y las constantes son estructuras que guardan valores necesarios para el funcionamiento del programa.

Sin embargo, las variables se declaran anteponiendo el signo peso ($) al nombre de estas, y se inicializan entregando un valor luego de poner el operador de asignación =.

$variable_1 = 99;
$variable_2 = 15;
echo $variable_1 + $variable_2;  // 114

Las variables pueden cambiar su valor durante el tiempo de ejecución del programa. Por ejemplo, pasando de guardar un número a guardar una cadena de caracteres.

$variable_3 = 50;
echo $variable_3;  // 50
$variable_3 = "Andrés";
echo $variable_3;  // 'Andrés'

Las constantes se declaran con la función define(); esta función recibe por argumento dos valores separados por una coma (,), siendo el primero el nombre de la constante encerrado entre comillas dobles, y el segundo, el valor de esta. Por convención se espera que el nombre sea en mayúsculas.

define("NUMERO_E", 2.7183);
echo NUMERO_E;  // 2.7183

Para usar las constantes, no hay necesidad de anteponer el signo peso ($).

Holaa compañeros. Se puede definir una constante usando la función define() o con la palabra reservada const fuera de la definición de una clase a partir PHP 5.3.0. Mientras que define() permite definir una constante con una expresión arbitraria, la palabra reservada const una vez que la constante está definida, no puede ser cambiada o redifinida.

Restricciones de const

  • Antes de PHP 5.6, al usar la palabra reservada const, solamente los datos escalares como (boolean, integer, float y string) podían estar contenidos en constante. Desde PHP 5.6 en adelante, es posible definir una constante como una expresión escalar, y también es posible definir un array constante. Es posible definir constantes como un resource, pero debería evitarse, ya que podría ocasionar resultados inesperados.

Esto último de resource es:

  • Es una variable especial, que contiene una referencia a un recurso externo. Los recursos son creados y usados por funciones especiales.
    Never stop learning

si hacen esto:
$nombre = “pedro”;
$persona = &$nombre;

esto va a hacer una “referencia” a la otra variable, esto quiere decir que si modificas una variable se modifica la otra, ya que en php el nombre de la variable y su valor son diferentes por lo que ambas variables harán referencia al mismo valor.
mas informacion

sinceramente no le encuentro un uso practico.

🤔 Diferencias entre define y const

Comparto lo que pude investigar:
.

Característica define() const
Tiempo de ejecución Se define durante tiempo de ejecución (ejecución del programa, el valor dependerá de las condiciones y eventos que ocurran). Se define durante tiempo de compilación (compilación del código fuente, el valor ya está determinado antes de que el programa se ejecute).
Se puede definir en una condicional o función ✅ Sí. ❌ No.
Alcance o Ámbito Su alcance es global (se puede obtener su valor en cualquier parte del código). Su alcance global o limitado.
Funcionamiento dentro de una Clase ❌ No (puede estar dentro de una función y esa función dentro de una clase, pero seguirá siendo una constante global). ✅ Sí, una Constante de Clase, su ámbito/alcance se limitará a esa Clase.

📚 Recursos:

LA diferencia de definir constantes usando define(), las constantes definidas con la palabra clave const deben declararse en el nivel superior del entorno de la aplicación porque se definen en tiempo de ejecución. Esto significa que no pueden declararse dentro de funciones, bucles, sentencias if o bloques try/ catch.

Cuando vayan a operar con variables apliquen los paréntesis para que su lectura sea correcta .

(($numero_1 + $numero_2 )* $numero_3) 

Una joya que nos trae Chat GPT:

En PHP, puedes definir una constante utilizando la función define() o, a partir de PHP 7.0, utilizando la palabra clave const. Ambos métodos son ampliamente aceptados, pero hay algunas diferencias clave entre ellos. A continuación, te mostraré ambas formas y algunas consideraciones para elegir la mejor práctica según tu situación:

Utilizando define():

php
Copy code
define(‘MI_CONSTANTE’, ‘Mi valor constante’);
Consideraciones:

Las constantes definidas con define() son globales y se pueden utilizar en cualquier lugar del script.
Puedes definir constantes con nombres dinámicos si lo necesitas, lo que puede ser útil en ciertas situaciones.
Ejemplo de nombre dinámico:

php
Copy code
$nombre = ‘MI_CONSTANTE’;
define($nombre, ‘Mi valor constante’);
Utilizando const (a partir de PHP 7.0):

php
Copy code
const MI_CONSTANTE = ‘Mi valor constante’;
Consideraciones:

Las constantes definidas con const están asociadas a la clase o namespace en el que se declaran. Son más locales y no son globales como las definidas con define().
No se pueden definir constantes con nombres dinámicos usando const.
Entonces, ¿cuál es la mejor práctica? Depende de tu caso de uso:

Si necesitas una constante global que pueda ser accesible en cualquier parte de tu aplicación, define() podría ser la elección adecuada.

Si estás trabajando en un entorno orientado a objetos y deseas definir constantes específicas de una clase o namespace, const es más apropiado.

En general, se recomienda utilizar const cuando sea posible, ya que ofrece un mejor encapsulamiento y evita posibles conflictos de nombres. Sin embargo, si necesitas constantes globales, define() sigue siendo una opción válida.

Excelente docente y su forma de explicar de manera tan sencilla.

Wow a esto si lo llamo una excelente explicación, simple y fácil de entender.

1. ami no me reconoce la diaglona n me la coloca exactamente igual en la pagina ejemplo 15 /n 2.
```js //Definir CONSTANTES, poner en mayusculas como NUMERO_PI define("NUMERO_PI", 3.14); ```
```txt
Retax es un profe divertido, me gustan sus clases

En PHP, el signo de dólar ($)…

Se utiliza para indicar que se está declarando una variable. Es necesario utilizar este signo para que el intérprete de PHP sepa que se está haciendo referencia a una variable y no a un texto plano. La función del signo de dólar es la de identificar el nombre de la variable y reservar un espacio en la memoria para almacenar su valor.

Además, el signo de dólar se utiliza para concatenar variables en PHP. Por ejemplo, si se quiere unir el valor de la variable $nombre con otro string, se utilizaría el signo de concatenación (.) junto con el signo de dólar: $mensaje = "Hola " . $nombre;.

En resumen, el signo de dólar es esencial en PHP para declarar y referirse a variables, y también se utiliza para concatenar variables y strings.

Estudié Física, y nunca usamos pi igual a 10 jajaja
Creo que quiso decir 10/3, pero de todas maneras nunca hacemos eso 😂

$personas = [
“Carlos” => 22,
“Mr Michi” => 15,
“Juan”=> 65
];

excelente definicion

Necesito guardar el número PI. ¿Qué debería usar?
Una constante

Las variables siempre van a cambiar su valor y su inicialización es con el signo de dolar $(nombre_variable). Las constantes ya tendrán un valor predeterminado como el tipo de cambio de una moneda o como bien lo comenta el profe el valor de PI y no necesitan inicializarla con el signo de ($) también bien recuerda que por recomendación y buena practica siempre van en mayúsculas.

var_dump — Muestra información sobre una variable
PHP_EOL (string): El símbolo ‘Fin De Línea’ y en automatico te genera un salto de linea.

ejemplo:


//variables

$numero = 8;

echo ("$numero").PHP_EOL;
var_dump($numero);


//Constantes
define("NUMERO_PI", 3.14);
//en la nuevas versiones de php, ya puedes utilizar la palabra reservada cosnt
const PI = 3.14159;

var_dump(PI);
var_dump(NUMERO_PI);