Entendido.

Este sitio utiliza cookies para analizar la navegación. Si continúa navegando se entiende que acepta su uso. Ver más detalles.";

Logo

Aprende Web

Crea y diseña tus sitios en la Web.

Manual de PHP

PHP: imprescindible para crear páginas web de modo profesional


Y ahora tambien aprende a programar en C++ con Aprende Web C++

logo rss RSS. Suscribir canal.

Buscar en Aprende Web

Traducir página

Visita nuestro blog:

bolg.aprende-web.net

y entérate de las novedades o deja un comentario.

Dudas y sugerencias:

aprendeweb@aprende-web.net





Sobre ésta página

Ültima modificación: 29-01-2016.

Visitas este mes: 17

Visitas el mes pasado: 25

logo
WEB-GRAFÍA

Mi agradecimiento a los siguientes sitios en los que me he basado para la elaboración de este manual.:

Curso de PHP
www.programaciónweb.net
Lecciones PHP
WebTaller.com
Manual de PHP
manualdephp.com
Curso de PHP
Aula Fácil.com
Manual de PHP en español
manual-php.com
PHP a fondo
desarrolloweb.com
Manual de PHP
Foros del Web
Manual de PHP
www.php.net
PHP Tutorial
w3schools.com

Donativos

Si este sitio te parece interesante puedes contribuir con una pequeña aportación.




16. Resumen(III)

16.3 Estructuras I

php

Las estructuras son trozos de código que conforman un bloque definido y que, o definen un objeto, o realizan una tarea determinada.

En esta página veremos las estructuras que definen objetos complejos. Estos objetos son los arrays y las funciones.

Arrays indexados

Un array es una variable en la que podemos guardar varios datos o variables. Éstos forman una lista con un único nombre. Cada elemento de la lista o array es identificado por su posición o por un nombre que podemos darle.

Hay dos tipos de arrays, los arrays indexados, que son simples listas de elementos, y los arrays asociativos, en los que a cada elemento de la lista se le asigna un nombre o clave.

En este apartado veremos los arrays indexados, que son los más sencillos.

Definir un array indexado

Para definir un array utilizamos la instrucción aray(). Para lo arrays indexados, dentro del paréntesis se escriben los elementos del array separados por comas. Éstos pueden ser valores o variables.

$miarray = ("Juan",,32,17.5,true,$v1)

Dentro del array podemos guardar todo tipo de datos, tanto cadenas como números enteros o decimales, valores booleanos o no poner nada. En un mismo array se pueden guardar distintos tipos de datos.

Leer un array indexado.

En los arrays indexados a cada elemento le corresponde un número. Empezamos a contar por el cero ( 0 ), al cual le corresponde el primer elemento, al segundo le corresponde el 1, y así sucesivamente.

Para buscar un elemento de un array utilizaremos su número con el siguiente código:

$miarray[num];

Donde $miarray es el array y num es el número del elemento.

Veamos un ejemplo:

$est=array("Primavera","Verano","Otoño","Invierno"); //definir el array
echo "$est[0], $est[1], $est[2], $est[3]"; //mostrar elementos en pantalla

El resultado del código anterior nos dará algo parecido a lo siguiente:

Primavera, Verano, Otoño, Invierno
Definir un array por sus elementos

Podemos definir un array definiendo directamente sus elementos:

$turnos[0]="mañana";
$turnos[1]="tarde";
$turnos[2]="noche";

Esto es lo mismo que escribir:

$turnos= array("mañana","tarde","noche");

Si al definir un elemento no hemos definido los anteriores, los anteriores no existen, pero para leerlo debemos usar el número que le hemos dado.

$miaray[5]="hola"

Este es un array de un sólo elemento, pero para poder leerlo escribiremos:

echo miarray[5]

Redefinir elementos

Para darle otro valor a un elemento de un array basta con definirlo de nuevo. Por ejemplo:

$verduras=array("lechuga","tomate","cebolla");
$verduras[0]="pepino";

Hemos cambiado el primer elemento del array al redefinir su contenido.

Contar los elementos de un array

Para contar los elementos que contiene un array utilizaremos la instrucción count($miarray), donde $miarray es la variable que contiene el array.

Podemos usar también la instrucción sizeof($miarray), de la misma manera que la anterior y con idéntico resultado.

Arrays asociativos

En un array asociativo cada elemento del array se compone de un valor y una clave. El valor será el elemento en sí, mientras que la clave será el índice con el que llamamos al elemento

Definir arrays asociativos

Para definir una array asociativo se define en cada elemento tanto su valor como su clave. Utilizamos el siguiente código:

$miarray=array("clave1"=>"valor1","clave2"=>"valor2" ... "claveN"=>"valorN");

Cada elemento se compone de dos partes, la clave y el valor. Escribimos primero la clave y luego el valor separados por los signos => .

"clave"=>"valor"

Leer elementos de arrays asociativos

Para leer elementos en array asociativos nos referiremos al elemento por su clave, la cual cumple la misma función que el índice o número en los arrays indexados.

echo $miarray[clave];

Hemos escrito sin comillas la clave dentro del corchete. Podemos escribirla con o sin comillas, es indiferente, sin embargo si la escribimos dentro de un texto con comillas la pondremos sin comillas.

echo "valor : $miarray[clave]";

Recorrer los elementos de un array asociativo:

No siempre se conocen todas las claves, o a veces queremos sacar en pantalla las claves, o puede ser que queramos recorrer los elementos de un array con sus claves y valores.

Para ello disponemos de la función each()

Por ejemplo, tenemos el siguiente array:

$cap=array("España"=>"Madrid","Portugal"=>"Lisboa","Italia"=>"Roma");

Para saber cuál es el primer elemento utilizamos la función each(). En primer lugar hacemos:

$verCap=each($cap);

Obtenemos en $verCap un array con los siguientes elementos.

Este es un array indexado y asociativo al mismo tiempo. Para ver la clave podemos usar tanto $verCap[0] como $verCap["key"], y para ver el valor podemos usar $verCap[1]; o también $verCap["value"];.

La primera vez que usamos esta función nos dará el valor y la clave del primer elemento, por ejemplo:

echo "La capital de $verCap[0] es $verCap[1].";

Lo cual nos dará en pantalla un resultado parecido a esto:

La capital de España es Madrid.

La función each() tiene un puntero interno que se desplaza al siguiente elemento del array después de usarla, por lo que para ver el siguiente elemento la utilizamos otra vez: Repetimos en el ejemplo las dos últimas líneas:

$verCap=each($cap);
echo "La capital de $verCap[0] es $verCap[1].";

Ahora el resultado en pantalla nos dará el siguiente texto:

La capital de Portugal es Lisboa.

El puntero interno se ha movido y nos muestra el siguiente elemento. Podemos recorrer de esta forma todos los elementos del array y extraer sus claves y valores.

Control del puntero interno

Para controlar el puntero interno y poder mostrar los elementos que queramos tenemos una serie de funciones. Basta con aplicarlas de la siguiente manera:

Si aplicamos estas funciones no debemos redefinir la función $verCap=each($cap); ya que el puntero ya se ha movido, y lo único que haríamos es moverlo otra vez una posición hacia adelante.

Funciones

Definición

La ejecución del código en PHP se realiza de manera secuencial. Es decir, se va ejecutando en el mismo orden en el que está escrito. Esto cambia con las funciones, ya que son trozos de código que no se ejecutan cuando se leen, sino que se guardan y se pueden ejecutar más tarde con una llamada a la función desde cualquier parte del código.

Podemos llamar a la función desde cualquier parte posterior del código y tantas veces como haga falta.

Tenemos dos tipos de funciones, las que vienen ya predefinidas en PHP y las que podemos crear nosotros o "personalizadas". Las funciones predefinidas ya están hechas, y sólo tenemos que llamarlas para que realicen una tarea. Las "personalizadas" debemos definirlas primero e indicar qué tareas queremos que realicen, y además sólo pueden usarse en la misma página.

Ya hemos visto algunas de estas funciones predefinidas en PHP (aunque a algunas les hemos llamado "instrucción"). Para llamarlas y que se ejecuten se escribe su nombre seguido de un paréntesis. Dentro del paréntesis a veces pondremos una serie de datos que necesita la función para realizar su tarea, son los argumentos. A veces una función no necesita argumentos, en ese caso se pone el paréntesis vacío.

A las funciones definidas por nosotros o "personalizadas" se les llama de la misma manera.

Las funciones son objetos, por lo que podemos guardarlas en variables. En este caso escribiremos como valor de la variable el nombre de la función sin paréntesis ni argumentos. Por ejemplo en una función llamada miFunción la guardamos en una variable:

$funcion1=miFuncion;

Sin embargo, si lo que queremos guardar es el resultado obtenido después de ejecutar el código de la función, en el valor de la variable pondremos la llamada a la función, con los argumentos que necesite:

$resultado=miFuncion($a,$b);

Definir una función

Para crear o definir una función utilizaremos el siguiente código:

function nombreFuncion($argumento1,$argumento2) {
         // ...instrucciones de la función ...//
         return $resultado;
         }

El código se compone de los siguientes elementos:

Funciones y variables:

Variables globales y locales

Las variables tienen un ámbito o zona en donde son válidas. Una variable creada dentro del flujo normal del código será válida dentro del flujo normal del código, pero no dentro de una función.

Las variables que se crean dentro de una función funcionan solamente dentro de la misma, no pudiendo usarse fuera de la función.

Esta última clase de variable nos da las variables locales, ya que éstas sólo pueden utilizarse en el ámbito en que han sido creadas.

En principio podemos pasar como argumento las variables que están fuera de la función y que vayamos a utilizar dentro.

Para las variables creadas dentro de la función, las podemos sacar fuera mediante la instrucción return (si son varias podemos sacarlas en un array).

Sin embargo estos métodos son limitados, por lo que lo mejor es declarar las variables como globales.


Declarar una variable global

Tenemos varios métodos para declarar una variable como global. PHP dispone de varios arrays internos, a los cuales podemos añadirles elementos. Uno de ellos es el array $GLOBALS que guarda todas las variables globales que hay en la página. Mediante este array transformamos una variable local en global:

Dentro del código de la función pondremos:

$v1 = $GLOBALS["$v1"];

Ahora la variable $v1 que estaba definida fuera de la función puede usare ahora dentro de la función.

En este método hay que declarar las variables una a una. Hay otro método que es usar la palabra reservada global seguido de los nombres de las variables que queremos transformar en globales separadas por comas. Esta línea la pondremos al principio de la función. Ejemplo:

$nombre="Juan";
$apellido="Martínez";
function saludo() {
   global $nombre, $apellido;
   $recuerdos = "Recuerdos a  $nombre $apellido" 
   echo $recuerdos;
   }
saludo();

El código anterior dará como resultado el siguiente texto:

Recuerdos a Juan Martínez
Argumentos

Los argumentos son los datos que le pasamos a la función para que ésta realice su tarea.

Al crear la función definimos los argumentos que se deben pasar, esto se pone dentro del paréntesis.

function nombreFunción($arg1,$arg2) { //...

Luego al llamar a la función debemos pasarle los argumentos que necesite. Las variables que pasamos al llamar a la función no tienen porqué ser las mismas, pero sí tienen que estar en el mismo orden:

$resultado=nombreFuncion($var1,$var2);

Siguiendo este ejemplo, dentro de la función la variable $var1 pasara a ocupar el lugar de $arg1, y $var2 ocupará el lugar de $arg2

Al definir la función podemos definir también cómo se pasan los argumentos, hay varias formas:


Pasar argumentos por valor

Es la forma vista hasta ahora:

function nombreFunción($arg1,$arg2) { //...

Una vez pasados los argumentos, podemos cambiarles el valor dentro de la función, pero las variables que hemos utilizado fuera de la función, seguirán teniendo el mismo valor.


Pasar argumentos por referencia

Aquí al cambiar el valor del argumento dentro de la función, cambiamos también el valor de la variable utilizada fuera de la función, para ello el argumento lleva un signo ampersand ( & ) delante:

function nombreFunción(&$arg1,&$arg2) { //...


Pasar argumentos por defecto

Al definir el argumento le asignamos un valor predeterminado, de manera que si al llamar a la función no se indica el argumento, éste tomará el valor por defecto.

Para ello al definir el argumento se le asigna un valor.

function nombreFunción($arg1=0,$arg2=0) { //...

Retorno de valores

Mediante la instrucción return al final del código de la función devolvemos el resultado de la función al flujo de la página.

La instrucción return no permite devolver más de un valor, sin embargo podemos hacer que devuelva más de un valor poniéndolos todos en un array:

return array($resultado1,$resultado2);

Luego al llamar a la función lo hacemos mediante la instrucción list() de la siguiente manera:

list($var1,$var2)=nombreFuncion();

La variable $var1 recogerá el valor de $resultado1 y la variable $var2 recogerá el valor de $resultado2.




En la siguiente página veremos las estructuras que realizan tareas en la página.

Estructuras II



manual de PHP

Anterior siguiente ... Siguiente siguiente


imprimir esta página

Página creada por ANYELGUTI.

Sugerencias: aprendeweb@aprende-web.net. Envia un manda un correo

Visita nuestro blog par saber en qué estamos trabajando: Aprende Web Blog

Más sobre anyelguti en http://anyelguti.16mb.com