7 de noviembre de 2014

Tercera entrega de PHP

Como bien sabrán, estoy realizando una serie de entregas de PHP dónde voy explicando un poco la introducción a la sintaxis, los tipos de condicionales y bucles. Se supone que era un post por día, pero debido al alto grado de actividad que soporto no he podido hacerlo y os obsequiaré con dos entradas en una.



Continuando las sentencias por el lado de los bucles.

Otro tipo de bucle es foreach. Este se utiliza para recorrer los arrays de los que hemos hablado anteriormente. Permite acceder a cada uno de ellos y realizar las operaciones que queramos.

<?php
foreach (variable as variable) // También puedes sustituirlo por una nueva variable
{
Operación;
}
?>

Veamos un ejemplo con un array que contiene una serie de colores como el Rojo, el amarillo el verde pero sin tener un índice definido:

<?php
$colores = array(“Rojo”, “Amarillo”, “Verde”);

foreach ($colores as $color)
{
echo “Este es el color “.$color.”<br>”;
}
?>
Esto mostrará la frase con los tres tipos de colores asignados.

En suma, tenemos un bucle muy utilizado sobre todo para sacar datos de una base de datos. El bucle while. El bucle while permite ejecutar una cosa mientras se cumpla una condición.

<?php


while (condición)
{
Operación;
}
?>


La siguiente demostración imprimirá una frase seguida del número correspondiente:

<?php
$a = 2;
$b = 10;

while ($a < $b)
{
echo “Este es el numero ”.$a++;
}
?>

Y ya para finalizar con los bucles. Tenemos el bucle do-while. Que permite ejecutar algo mientras se va verificando la condición.

<?php

do {
Operación;
}
while (condición);
?>

Un pequeño ejemplo utilizando el anterior pero adaptado a este tipo de bucle.

<?php
$a = 2;
$b = 10;

do {
echo “Este es el numero ”.$a++;
}
while ($a < $b);
?>

Ya visto condicionales y bucles solo nos queda por ver las funciones. Las funciones nos permiten hacer un cálculo o una operación y que nos devuelva un resultado para, posteriormente darle un uso. Esto es buenísimo porque nos permite ahorrar mucho código si realizamos muchos procesos con un código como por ejemplo, sumar x valores en multitud de páginas y que a fin de cuentas es el mismo.

La sintaxis de una función es la siguiente:

<?php
function nombre_de_la_funcion()
{
Operación;
}

?>

Es una de las funciones más simples, que no requiere de argumentos. Si nosotros queremos utilizar argumentos para realizar sumas y restas, hay que añadírselos.

<?php
function nombre_de_la_funcion($nombre_argumento1,$nombre_argumento2)
{
Operación;
}

?>

Y si queremos que nos devuelva un valor n de una operación. Añadimos la sentencia return de la siguiente forma:

<?php
function nombre_de_la_funcion($nombre_argumento1,$nombre_argumento2)
{
return Operación;
}

?>

En el siguiente ejemplo podemos ver una operación aritmética simple con una función:

<?php
function suma($arg1,$arg2)
{
return $arg + $arg2;
}

?>

No obstante, esto solo declara la función. Pero no la llama. Para llamarla, deberíamos utilizar el nombre de la función y como en el ejemplo anterior hago de uso de una serie de parámetros la llamaré de la siguiente forma:

<?php
function suma($arg1,$arg2)
{
return $arg1 + $arg2;
}

$resultado = suma(2,2);
echo $resultado;

?>
Esto devolverá 4 como valor.

Y por último hay que considerar la sintaxis a la hora de crear una función. Al igual que las variables no debe empezar por un número, con el único carácter permitido (_).

Volviendo a las variables...

Variables locales, globales y superglobales

En PHP existen una serie de variables que se diferencian por su permisividad y forma de uso, en el caso de las variables locales son aquellas que se declaran dentro de una función o dentro de un bucle para mostrar un resultado temporalmente y que no pueden ser accedidas desde fuera del proceso.

Un ejemplo de las mismas utilizadas en el proyecto, es el uso de bucles while, dónde el resultado de una consulta es almacenado en una variable de tipo array. Pudiendo acceder a los datos dentro del bucle por supuesto, pero no fuera de él.

Por otro lado tenemos las variables globales y superglobales. Aquellas que son globales tienen la característica de que puede declararse en todo el programa y pueden ser accedidas en cualquier momento, incluyéndose por una función.

Sin embargo, las variables superglobales, además de heredar las características de una variable global. Permiten almacenar datos del programa y mantenerlos en el tiempo.
En el siguiente ejemplo veremos un tipo de variable local y una global.

<?php
$colores = array(“Rojo”, “Amarillo”, “Verde”);

foreach ($colores as $color)
{
echo “Este es el color “.$color.”<br>”;
}
?>


$colores es una variable global porque puede accederse desde cualquier parte de nuestro programa.

Por otro lado, la variable $color incluida en el bucle es de tipo local porque no puede accederse a ella desde el exterior del bucle.

Y un ejemplo de variable superglobal es $_SESSION, que conjunto una función llamada session_start(); permite almacenar información mediante un array lo que queramos que perdure en el tiempo. El inconveniente de esto, es que deberá llevar incorporada la función session_start(); en cualquier página o parte que queramos utilizarla. Para destruirla bastará con añadir session_destroy();

Referencias

  • Google
  • PHP.net, el manual oficial
  • Codigo Facilito
  • Desarrollo Web

No hay comentarios:

Publicar un comentario

Gracias por visitar mi blog y animarte a comentar. Por favor se respetuoso con sus comentarios. Cualquier error es preferible reportárlo que criticarlo por el bien de todos.



Licencia y responsabilidades

Licencia Creative Commons
netSys blog por Álvaro Castillo se encuentra bajo una Licencia Creative Commons Atribución-CompartirIgual 3.0 Unported.

El propietario de este blog no se responsabiliza de los daños que puedan generarse u ocurrir por la información expuesta aquí, en caso de ser utilizada la responsabilidad recae bajo quién la use.

Se les informa de posibles publicaciones donde queden expuestas imágenes a terceros o marcas comerciales que siempre tendrán sus fuentes, y sus atribuciones.

Por último, en caso de confusión por la temática que se trate de los artículos, tutoriales...etc dejaremos claro que este sitio Web no colabora directamente con ningún proyecto de forma oficial.