Una variable es un nombre que guarda un valor para usarlo después. En C tenías
que declarar el tipo (int nota;); en PHP no: la variable se crea en el momento en
que le asignas algo, y el tipo lo decide el valor.
Crear y usar una variable
Anatomía de una asignación
$nombre = "Ana";
^ ^ ^ ^ ^
| | | | `-- punto y coma
| | | `-- el valor que se guarda
| | `-- asignación: guarda lo de la derecha en lo de la izquierda
| `-- el nombre de la variable
`-- el signo $ marca que es una variable
$nota = 6.2 se lee “guarda 6.2 en $nota”. Para comparar si dos valores son
iguales se usa ===, que se ve en Operadores.
Reglas para nombrar
Regla
Válido
Inválido
Empieza con $
$nota
nota
Después del $, una letra o _
$nota1, $_temp
$1nota
Solo letras, números y _
$nota_final, $notaFinal
$nota-final, $nota final
Distingue mayúsculas
$nota y $Nota son dos variables distintas
Incorrecto: nombres que no dicen nada, o con tildes
<?php$x = "Ana";$n2 = 6.2;$año = 2026;
$x y $n2 obligan a adivinar qué guardan. $año funciona, pero la ñ y las
tildes causan problemas con algunos teclados y editores: no se usan, igual que
en los nombres de archivo.
En el curso usamos camelCase: primera palabra en minúscula y cada palabra
siguiente con mayúscula inicial. Lo importante es elegir un estilo y usar el
mismo en todo el proyecto.
Ver qué tiene una variable: var_dump
echo muestra el valor, pero no dice de qué tipo es. var_dump() muestra las
dos cosas, y es la herramienta principal para revisar qué está pasando.
echo false no imprime nada, y echo true imprime 1. No hay forma de
saber si la variable es false, "" o null.
Correcto: var_dump cuando dudas
<?php$inscrita = false;var_dump($inscrita);
bool(false)
print_r() es parecido a echo pero más legible para los arreglos; se usa en la
Parte 5. Para valores simples, var_dump().
var_dump también funciona en el navegador
Si lo usas en una página con php -S, el resultado aparece en la página. Úsalo
para revisar y bórralo antes de entregar: un var_dump olvidado en el Trabajo
2 se ve como un error.
Constantes
Una constante es un valor que no cambia durante el programa: el IVA, el nombre
del sitio, una nota mínima de aprobación. Se escribe en MAYÚSCULAS y sin $.
Al convertir un decimal en texto, PHP no escribe el .0 sobrante. El valor sigue
siendo float(4); para mostrarlo con decimales se usa number_format(), que se ve
en Cadenas de texto.
Incorrecto: intentar cambiar una constante
<?phpconst IVA = 0.19;IVA = 0.21;
PHP Parse error: syntax error, unexpected token "=" in /home/ana/prueba.php on line 3
Existe una segunda forma, define("IVA", 0.19);, que hace lo mismo. Usaremos
const.
Constantes que ya trae PHP
Constante
Valor
PHP_VERSION
La versión instalada, por ejemplo 8.3.6
PHP_EOL
El salto de línea del sistema (\n en Linux)
PHP_INT_MAX
El entero más grande: 9223372036854775807
M_PI
El número π: 3.1415926535898
Pruébalo
Crea variables.php con cinco variables, una de cada tipo, y revísalas con var_dump()
Cambia el valor de una de ellas a mitad del programa e imprímela antes y después
Haz echo de una variable false y luego var_dump() de la misma
Error provocado: usa $Nombre habiendo creado $nombre y lee el Warning
Error provocado: escribe una variable sin $ y lee el mensaje
Errores comunes
Síntoma
Causa
Solución
Warning: Undefined variable $Nombre
Mayúsculas distintas al crearla y al usarla
Usa exactamente el mismo nombre; PHP distingue mayúsculas
Escribiste la variable sin $ y PHP la buscó como constante
Agrega el $
syntax error, unexpected token "-"
Usaste guion en el nombre: $nota-final
Usa $notaFinal
Se imprime 1 donde esperabas true
echo convierte true en 1 y false en nada
Usa var_dump() para revisar
Checkpoint
Intenta responder antes de desplegar cada pregunta.
Escribiste $total = 100; y más abajo echo $Total;. ¿Qué pasa?
Aparece Warning: Undefined variable $Total y no se imprime nada. $total y
$Total son variables distintas.
¿Por qué var_dump es mejor que echo para revisar una variable?
Porque muestra el tipo además del valor. Con echo, false, "" y null se
ven exactamente igual: no imprimen nada.
¿Cuándo usarías una constante en vez de una variable?
Cuando el valor no debe cambiar mientras corre el programa: el IVA, la nota de
aprobación, el nombre del sitio. Si alguien intenta cambiarla, PHP da error.
¿Qué tipo tiene $x después de $x = 7; $x = "siete";?
string. En PHP la variable no tiene un tipo fijo: lo toma del último valor
asignado. Que se pueda no significa que convenga: cambiar el tipo de una variable
confunde a quien lee el código.