Creando (declarando) variables

Las variables son contenedores para almacenar información.

Creando (declarando) variables

En PHP, una variable comienza con el signo dólar ($) seguido del nombre de la variable.

Ejm

<?php
$txt="Hola mundo";
$numero=1;
$flotante=1.25;
?>

Cuando quieres asignar texto a una variable, lo has de hacer poniendo el texto entre comillas (bien dobles o simples).

Variables PHP

Una variable puede tener un nombre corto (como x o y), o poner un nombre más descriptivo (edad, genero, numero…).

Reglas para declarar variables

  • Una variable comienza con el signo $ seguida del nombre de la variable que queremos poner.
  • Un nombre de variable debe comenzar con letra o guión bajo (_).
  • Un nombre de variable NUNCA debe comenzar por un número.
  • Un nombre de variable, únicamente puede contener caracteres alfanuméricos (A-z, 0-9 y _)
  • Los nombres de variable son case sensitive, es decir, son sensibles a mayúsculas y minúsculas.

Mostrar variables

La declaración echo es frecuentemente utilizada para mostrar datos en pantalla.

Ejm

<?php
$txt="www.websarrolladores.com";
echo $txt;
?>

Ejm

<?php
$txt="www.websarrolladores.com";
echo "Visita ".$txt;
?>

El siguiente ejm sumará 2 variables.

Ejm

<?php
$var1=10;
$var2=20;

echo $var1+var2;
// MOSTRARÁ EN PANTALLA 30
?>

PHP transforma directamente la variable al tipo que le corresponderá (string, number…) dependiendo del valor que demos a esa variable, otros lenguajes de programación no presentan esta cualidad.

Alcance de las variables

En PHP las variables pueden ser declaradas directamente en el script.

El alcance de las variables es la parte del script donde la variable puede ser referenciada / utilizada.

PHP tiene 3 tipos de alcance:

  • Local
  • Global
  • Static

Alcance global y local

Una variable declarada fuera de una función tiene alcance global, y sólamente puede ser accedida fuera de la función.

Ejm

<?php
$x=5; // ALCANCE GLOBAL

function myTest()
{
echo "<p>La variable x dentro de la función es: $x</p>";
}

myTest();

echo "<p>La variable x fuera de la función es: $x</p>";
?>

La variable declarada dentro de la función no será accedida, es decir, no imprimirá en pantalla el valor asignado, ya que la hemos creado fuera.

En cambio el trozo de código fuera de la función SÍ imprimirá el valor de la variable.

Veamos otro ejm, declarando una variable dentro de una función.

Ejm

<?php
function myTest()
{
$x=5; // VARIABLE DECLARADA DENTRO DE LA FUNCIÓN
echo "<p>La variable x tiene el valor: $x</p>";
}

myTest();

echo "<p>La variable x tiene el valor: $x</p>";
// NO IMPRIMIRÁ NINGÚN VALOR YA QUE SE HA CREADO DENTRO DE LA FUNCIÓN
?>

Palabra clave ‘Global’

La palabra Global es utilizada para utilizar variables dentro de una función. Para hacer una variable global, hemos de poner esta palabra delante de la variable que queremos hacer global.

Ejm

<?php
$x=5;
$y=6;

function myTest()
{
global $x, $y;
$y=$x+$y;
}
?>

myTest();

echo $y; // IMPRIMIRÁ 15;
?>

PHP también almacena variables globales en un array denominado $GLOBALS[index]. El index mantiene el nombre de la variable. Este array también es accesible desde dentro de las funciones, y pueden ser utilizados para actualizar las variables globales directamente.

El ejm anterior se puede reescribir de la siguiente manera.

Ejm

<?php
$x=5;
$y=6;

function myTest()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']
}

myTest();
echo $y; // IMPRIME EN PANTALLA 15
?>

Palabra clave Static

Normalmente, cuando una función es completada (ejecutada), todas sus variables son borradass, sin embargo, algunas veces queremos que una variable no sea eliminada, para ello utilizamos la palabra clave static.

Ejm

<?php
function myTest()
{
static $x=0;
echo $x;
$x++;
}

myTest();
myTest();
myTest();
?>

En este script, cada vez que se ejecute la función, la variable tendrá información del último valor almacenado antes de que se ejecutase dicha función.