Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Phpasico Manual
Phpasico Manual
INDICE
Sitio Web
Pagina Web
Dominio
Hosting
Una Página de Internet o Página Web es un documento que contiene información espe-
cífica de un tema en particular y que es almacenado en algún sistema de cómputo que
se encuentre conectado a la red mundial de información denominada Internet, de tal
forma que este documento pueda ser consultado por toda persona que se conecte a es-
ta red mundial de comunicaciones.
Sitio Web
http://sistemasuni.edu.pe
http://www.sistemasuni.edu.pe
/http://www.sistemasuni.edu.pe
/
Pe Dominio Principal
Edu Subdominio
sistemasuni Servidor Web
http Protocolo de hipertexto
www World Wide web(Red Global Mundial)
Sitio Web
Un sitio web (en inglés: website) es un conjunto de páginas web, típicamente comunes
a un dominio de Internet o subdominio en la World Wide Web en Internet
Pagina Web
Todos los sitios web públicamente accesibles constituyen una gigantesca "World Wide
Web" de información.
A las páginas de un sitio web se accede desde una URL raíz común llamada portada,
que normalmente reside en el mismo servidor físico. Las URLs organizan las páginas en
una jerarquía, aunque los hiperenlaces entre ellas controlan cómo el lector percibe la
estructura general y cómo el tráfico web fluye entre las diferentes partes de los sitios.
Dominio
Un dominio es el nombre que identifica a un Sitio Web en internet, debe ser único y
apuntar al servidor donde está alojada la página web. Existen alrededor de 1000 millo-
nes de dominios en internet. Aunque gran parte no están asociados a ningún sitio web
Hosting
Hosting es una palabra en inglés que significa hospedar o alojar. Aplicado al Internet,
significa poner una pagina web en un servidor de Internet para que ella pueda ser vista
en cualquier lugar del mundo entero con acceso al Internet.
LENGUAJE PHP
El lenguaje PHP es un lenguaje de programación de estilo clásico, con esto quiero decir
que es un lenguaje de programación con variables, sentencias condicionales, bucles,
funciones.... No es un lenguaje de marcas como podría ser HTML, XML o WML. Está
mas cercano a JavaScript o a C, para aquellos que conocen estos lenguajes.
PHP es un lenguaje de script del lado del servidor. Otros lenguajes similares son
ASP, JSP o ColdFusion
Los scripts PHP están incrustados en los documentos HTML y el servidor los in-
terpreta y ejecuta antes de servir las páginas al cliente
Página Página
HTML HTML
internet
<P>Hola, Ana</P>
<?PHP
$nombre = "Ana";
print ("<P>Hola, $nombre</P>");
?>
<P>Hola, Ana</P>
El servidor HTTP Apache es un software (libre) servidor HTTP de código abierto para
plataformas Unix (BSD, GNU/Linux, etc.), Windows, Macintosh y otras,
que implementa el protocolo HTTP/1.11 y la noción de sitio vir- tual.
Cuando comenzó su desarrollo en 1995 se basó inicialmente en códi-
go del popular NCSA HTTPd 1.3, pero más tarde fue reescrito por
completo. los primeros ingenieros de internet. El servidor Apache se desarrolla dentro
del proyecto HTTP Server (httpd) de la Apache Software Foundation.
Instalacion de Php
Sintaxis básica
Tipos de datos
Variables
Constantes
Expresiones y operadores
Sintaxis básica
Para escribit un programa en php se sigue lo siguiente:
PHP es sensible a las mayúsculas
¿Cómo se incrusta en la página web?
<?PHP ... ?>
recomendado, siempre disponible
<?= expresión ?>
equivale a <? echo expresión ?>
Las instrucciones se separan con un ; como en C. La marca final ?> implica un ;
Comentarios: como en C, /* … */ y //
Sentencia echo
echo: muestra una o más cadenas
echo cadena1 [, cadena2…]; // no es una función
echo “Hola mundo”;
echo “Hola “, “mundo”;
Tipos de Datos
Tipos simples
o Enteros
o Reales (equivalentes a los doubles de C).
o Cadenas
Tipos compuestos
o Vectores
Asociativos
Escalares
o Objetos
Enteros
PHP soporta tres notaciones diferentes para especificar los números enteros: octal, de-
cimal y hexadecimal.
Octal: 075
Decimal: 276
Hexadecimal:0x0A3
Vemos que es necesario especificar de forma explícita las notaciones octal y hexadeci-
mal, mediante los caracteres "0" y "0x", respectivamente. Si no se indica nada se asume
que se trata de notación decimal.
Reales
Los reales, aunque no admiten notaciones en diferentes bases como los enteros (bases
8, 10 y 16), pueden especificarse de las dos formas siguientes:
2.432
2.33e3(notación científica)
Hay que hacer notar el hecho de que los reales en PHP equivalgan en rango y precisión
a los reales tipo double que encontramos en C.
Cadenas
$a = 10;
$b = 1.2e3;
$c = "Los valores de \"a\" y \"b\" son $a y $b.";
echo("$c");
Nótese que se han utilizado caracteres de escape para poder incluir comillas dobles en
la cadena.
\n Retorno de carro
\t Tabulación
\\ \
\$ $
\" "
Si utilizamos comillas simples las variables no serán sustituidas por su valor y, además,
solo podrán usarse las secuencias de escape "\\" y "\'".
$a = 10;
$b = 12;
$c = 'Los valores de \'a\' y \'b\' son $a y $b.';
echo('$c');
echo("$c");
Las cadenas pueden ser evaluadas como valores numéricos. Se fijan los siguientes cri-
terios:
Si la cadena contiene '.', 'e' o 'E', se evaluará como un número real. En otro caso
se considerará un entero.
El valor de la conversión será el fragmento inicial de la cadena, si este es número
válido. Se considerará que se trata de un número válido si está compueso de un
signo (opcional), uno o más dígitos, punto decimal (opcional) y un exponen-
te(también opcional) que consiste en una 'e' o 'E' seguida de más dígitos.
Vectores
PHP permite la creación de vectores de forma implícita (utilizándolos sin más se decla-
ran automáticamente) o bien de forma explícita (funciones list() o array()).
Al igual que gran parte de los lenguajes, en PHP se accede a una posición de un vector
poniendo su nombre y el índice encerrado entre corchetes [ ]. El índice puede ser aso-
ciativo $a["rojo"] o escalar $a[4]. Si al asignar un valor a un vector no ponemos ninguna
posición entre los corchetes, estaremos añadiendo una posición al final del vector donde
se almacenará dicho valor.
$a[3]["b"] = 3;
$a[4]['prueba'] = 'prueba';
echo ("Esto es una $a[4]['prueba']");
El resultado será
Pero en PHP4 aparecen las llaves { } para solucionar el problema de la siguiente forma:
Objetos
Para poder seguir este apartado es necesario que el lector tenga nociones de lo que es
la programación orientada a objetos, ya que esto solo pretende ser un tutorial de PHP, y
no un tutorial de programación.
Una clase es un conjunto de variables al que se asocia una serie de funciones. Se utiliza
la sintaxis:
class nombre {
var variables;
declaración y definición de funciones;
}
Lo veremos más claro con un ejemplo. Vamos a crear un objeto que represente un vec-
tor:
class vector {
var $x, $y; /* componentes */
{
$this->x = $cx; /* con "this" nos referimos
a este objeto */
$this->y = $cy;
}
function imprime()
{
print("($this->x, $this->y)");
}
function pone_x($cx)
{
$this->x = $cx;
}
function pone_y($cy)
{
$this->y = $cy;
}
(0,0)(5,0)
En PHP también existe la herencia. Se lleva a cabo mediante la palabra reservada ex-
tends, e implica que todos los atributos y funciones de la clase base los tendrá también
la clase heredera. Vamos a añadirle un punto de origen a la clase anterior.
function imprime_o()
{
print("($this->ox, $this->oy)");
}
function pone_ox($ox)
{
$this->ox = $ox;
}
function pone_oy($oy)
{
$this->oy = $oy;
}
$v = new vector_extendido(1,2,0,0);
$v->pone_x(5);
$v->pone_ox(2);
$v->imprime();
$v->imprime_o();
Variables y Declaraciones
Variables
Una variable es un contenedor de información, en el que podemos meter números enteros,
números decimales, caracteres... en contenido de las variables se puede leer y se puede
cambiar
durante la ejecución de un página PHP.
En PHP todas las variables comienzan con el símbolo del dólar $ y
no es necesario definir una variable antes de usarla. Tampoco tienen tipos, es decir que
una misma variable puede contener un número y luego puede contener carácteres.
Declaración
Las variables se declaran simplemente inicializándolas:
$strCadena = "Hola Mundo";echo($strCadena); Si intentamos acceder a una variable no
inicializada, PHP se quejará. Para evitar ello, existe la función error_reporting(mask).
Referencia a variables
Tal y como hemos venido observando en los ejemplos, las variables en PHP se referen-
cian mediante el símbolo $ seguido del nombre de la variable. Además, curiosamente,
PHP es sensible a mayúsculas en cuanto a nombres de variables se refiere; es decir, las
variables $prueba y $Prueba se consideran diferentes. No ocurre lo mismo con el resto
de construcciones del lenguaje:
Asignación de valores
Pues bien, en PHP3 la asignación se produce por valor; es decir, el valor de la expre-
sión que se encuentra a la derecha se copia en la zona de memoria reservada para la
variable destino. Esto implica, que si asignamos el una variable var1 a otra var2, lo que
se copiará en ésta última será el valor de la primera, y las modificaciones que hagamos
sobre cualquiera de las dos no afectarán a la otra.
$a = 5;
$b = $a;
$b = $b + 3;
/* los valores serán $a = 5 y $b = 8; */
$a = 5;
$b = &$a;
$b = $b + 3;
/* los valores serán $a = 8 y $b = 8; */
Importante: el operador & solo se utiliza con variables. Los siguientes usos no son váli-
dos:
$a = &(3 + 4);
$b = &mostrar() /* donde mostrar() es una función */
$c = &$vector[3];
El ámbito de una variable es el conjunto de sentencias en las que dicha variable puede
utilizarse. Por ejemplo, en la siguiente función el ámbito de $var tan sólo comprenderá
las sentencias que conforman dicha función.
function ambito() {
$var = 4;
$a = $a + 4;
{...} /* aquí podemos referenciar $var y obtendremos
4 como su valor */
}
$function no_ambito() {
/* aquí no podemos acceder al valor de $var de ambito().
Si intentamos referenciar a $var aquí, obtendremos una
variable nueva que no será $var de ambito(). */
}
$var = 4;
function muestra()
{
echo($var); /* nos estamos refiriendo a una variable
$var que es local a la función, no a la
global */
}
Variables globales
Pero eso no significa que no podamos acceder a variables globales. Para hacerlo debe-
mos declarar, como tal, a la variable global a la que queramos acceder.
$var = 4;
function muestra()
{
global $var;
echo "El valor de var es $var";
}
El resultado será:
El valor de var es 4
Otra posible solución es utilizar la variable $GLOBALS, que es un vector asociativo que
almacena los valores de todas las variables globales.
$var = 4;
function muestra()
{
$var = $GLOBALS["var"];
echo "El valor de var es $var";
}
Variables estáticas
Se trata de variables locales a las funciones pero que mantienen su valor cuando se sale
de la función. Así, al volver a entrar, sigue manteniendo el mismo valor que tenía al dejar
la función.
function incrementa()
{
static $var = 0;
echo("$var");
$var = $var + 1;
}
Variables variables
Podría parecer que, en un principio, el título de este capítulo está mal escrito... pero no
es así. Si utilizamos dos $ en lugar de uno, obtendremos el siguiente resultado:
$b = "saludo"
$a = "b";
echo "${$a}";
En la última línea, PHP tomará el valor de $a, que es b, y lo sustituirá. Entonces tenemos
la sentencia equivalente echo $b, que será "saludo". Incluso podremos hacer una asig-
nación del tipo $$a = "despedida", que modificará el valor de $b.
Variables predefinidas
En PHP se definen por defecto una serie de variables a las que podemos acceder desde
nuestros scripts. En esta sección vamos a ver las variables de entorno, que resumimos
en la siguiente tabla.
Operadores en PHP
Operadores aritméticos
+ Suma dos valores
- Resta dos valores (o pasa a negativo un valor)
* Multiplica dos valores
/ Divide dos valores
% Resto de dividir dos valores
++ Incremento en una unidad
Expresiones y operadores
Operadores aritméticos:
+, -, *, /, %, ++, --
Operador de asignación:
=
operadores combinados: .=, +=, etc
$a = 3; $a += 5; a vale 8
$b = “hola ”; $b .= “mundo”; b vale “hola mundo”
Equivale a $b = $b . “mundo”;
Operadores de comparación:
==, !=, <, >, <=, >= y otros
Operador de control de error: @. Antepuesto a una expresión, evita cualquier
mensaje de error que pueda ser generado por la expresión
Operadores lógicos:
and (&&), or (||), !, xor
and/&& y or/|| tienen diferentes prioridades
Operadores de cadena:
concatenación: . (punto)
asignación con concatenación: .=
Constantes
Con PHP podemos definir constantes gracias a la función define(). Su sintaxis es la si-
guiente:
define("nombre_cte", valor);
Ejemplos:
Vemos que en el caso de las constantes no es necesario poner el símbolo $. Nótese que
una constante no podrá aparecer dentro de una cadena.
Practicas Dirigidas
Sentencia echo
Primer Programa
Para crear programas en php debe guardar el archivo dentro de una carpeta en la ruta
C:\appserv\www con extension .php
<?
phpinfo();
?>
<?
echo("¡Hola Mundo!<BR>");
?>
HTML Y PHP
HTML es el lenguaje con el que se escriben las páginas Web. Las páginas Web pue-
den ser vistas por el usuario mediante un tipo de aplicación llamada navegador
(Browser).
Podemos decir por lo tanto que el HTML es el lenguaje usado por los navegadores para
mostrar las páginas Webs al usuario, siendo hoy en día la interfase más extendida en la
red.
Este lenguaje nos permite aglutinar textos, sonidos e imágenes y combinarlos a nuestro
gusto. Además, y es aquí donde reside su ventaja con respecto a libros o revistas, el
HTML nos permite la introducción de referencias a otras páginas por medio de los enla-
ces hipertexto.
ESTRUCTURA BÁSICA DE UN DOCUMENTO HTML
Un programa (documento o página) elaborado en HTML consta básicamente de cuatro
partes principales con las siguientes directivas, que son:
Partes:
1)
Inicio del Documento
2)
Inicio de la Cabecera
3) Inicio/Final del título del Documento
Final de la cabecera
4)
Inicio del Cuerpo del Documento
ETIQUETAS DE FORMATO:
<B> y </B> : Sirve para colocar un texto en negrita
<U> y </U> : Sirve para subrayar un texto
<I> y </I> : Sirve para colocar un texto en cursiva
ETIQUETAS DE PÁRRAFO:
HEAD
<H1> y </H1>
<H2> y </H2>
<H3> y </H3>
<H4> y </H4>
<H5> y </H5>
<H6> y </H6>
SIZE: Define el tamaño de la letra. Este tamaño puede ser absoluto o relativo. Existen
siete niveles de tamaño distinto numerados de 1 a 7 por orden creciente
EJM:
<FONT SIZE=4>Este texto es más grande</FONT>
COLOR: Define el color el color del texto mediante el atributo color. Este se puede espe-
cificar mediante un código o simplemente con el nombre en inglés
EJM:
<FONT FACE=”Comic Sans MS, arial, verdana”>Esta texto tiene tipografía</FONT>
EJM 1:
<HTML>
<HEAD>
<TITLE>Mi primera página</TITLE>
</HEAD>
<BODY>
<H1>Bienvenido a mi página</H1>
Esta página se encuentra en <STRONG>Lima – Perú</STRONG>, <BR>
en el <EM>servidor web</EM> de IESP Norbert Wiener.
<HR>
Hasta luego !
</BODY>
</HTML>
<HTML>
<HEAD>
<TITLE>Mi primera página</TITLE>
</HEAD>
<BODY>
<H1>Bienvenido a mi página</H1>
Esta página se encuentra en <STRONG>Lima – Perú</STRONG>, <BR>
en el <EM>servidor web</EM> de IESP Norbert Wiener.
<HR>
Hasta luego !
</BODY>
</HTML>
LISTAS
Nos permiten mostrar la información debidamente ordenada.
LISTAS ORDENADAS O ENUMERADAS:
Por lo general, etiquetadas con números.
<OL> y </OL> : Sirve para toda la lista (Order List)
<LI> : Sirve para cada elemento de la lista (List Item)
<LH> : Define el titulo de la lista, este es opcional y
aparecerá en la parte superior de esta.
El formato es el siguiente:
<OL START = n° TYPE = A ó a ó I ó i ó 0 >
<LH> Titulo de la lista </LH>
<LI> Elemento 1
<LI> Elemento 2
...
<LI> Elemento n
</OL>
El punto de comienzo siempre será el 1 si no se indica en START con otro valor de
comienzo y el tipo de numeración puede seleccionarse con el atributo TYPE. Sus posi-
bles valores son:
A : Letras mayúsculas.
a : Letras minúsculas.
I : Número romanos en mayúsculas.
i : Número romanos en minúsculas.
0: Números (es por defecto por tanto no hay que indicarlo).
EJEMPLOS
1) CÓDIGO HTML:
<OL >
<LI> Elemento 1
<LI> Elemento 2
<LI> Elemento 3
</OL>
RESULTADO:
1. Elemento 1
2. Elemento 2
3. Elemento 3
2) CÓDIGO HTML:
<OL TYPE=I>
<LI> Elemento 1
<LI> Elemento 2
<LI> Elemento 3
<OL TYPE=a>
<LI> Elemento 3.1
<LI> Elemento 3.2
</OL>
<LI> Elemento 4
</OL>
RESULTADO:
I. Elemento 1
II. Elemento 2
a. Elemento 3.1
b. Elemento 3.2
III. Elemento 4
El formato es el siguiente:
</UL>
Para marcar los distintos elementos de la lista se usarán unos símbolos, que pueden
ser un disco (DISK), un circulo (CIRCLE) ó un cuadrado (SQUARE), seleccionables con
el atributo TYPE.
EJEMPLOS
1) CÓDIGO HTML:
<UL >
</UL>
RESULTADO:
Titulo
Elemento 1
Elemento 2
Elemento 3
2) CÓDIGO HTML:
<UL TYPE=SQUARE>
<LI> Elemento 1
<LI> Elemento 2
<LI> Elemento 3
<UL TYPE=CIRCLE>
</UL>
<LI> Elemento 4
</UL>
RESULTADO:
Elemento 1
Elemento 2
Elemento 3
o Elemento 3.1
o Elemento 3.2
Elemento 4
IMÁGENES
Imágenes y enlaces
Alineación respecto al texto
Imágenes
Para incluir gráficos e imágenes en nuestras páginas utilizaremos la etiqueta
<IMG>
de esta manera:
El parámetro SRC especifica el nombre del archivo que contiene el gráfico. Los formatos
estándar en la red son el GIF y el JPG.
EJM 1:
<HTML>
<HEAD>
<TITLE>Imágenes</TITLE>
</HEAD>
<BODY>
<IMG SRC="C:\GLOBE.gif">
</BODY>
</HTML>
EL ATRIBUTO ALT
El atributo ALT especifica el texto que se mostrará en lugar del gráfico en aquellos nave-
gadores que no sean capaces de mostrarlos (como el Lynx) y en el supuesto de que el
usuario los haya desactivado. Algunos navegadores lo muestran cuando pasamos el
ratón por encima de la imagen. Es por eso que, aunque algunos usuarios no lo lleguen a
ver nunca, conviene ponerlo siempre. De hecho, el estándar HTML obliga a hacerlo.
Para incluir gráficos e imágenes en nuestras páginas utilizaremos la etiqueta
<IMG SRC="archivo_gráfico" ALT="descripción">
EJM 2:
<HTML>
<HEAD>
<TITLE>Imágenes</TITLE>
</HEAD>
<BODY>
<IMG SRC="C:\GLOBE.gif" ALT="La Tierra">
</BODY>
</HTML>
Existen dos atributos que, aunque opcionales, conviene indicar siempre: la altura
(HEIGHT) y la anchura (WIDTH) del gráfico en pixels. De este modo, el navegador pue-
de mostrar un recuadro del tamaño de la imagen mientras la va leyendo de la red y así
poder mostrar el resto de la página correctamente mientras tanto.
Se ve así:
Imágenes y enlaces
Suele ser común incluir enlaces dentro de un gráfico. En ese caso, por defecto, los na-
vegadores le pondrán un borde al gráfico para indicar que efectivamente es un enlace,
pero la mayoría de las veces bastante poco estético. Por medio del parámetro BORDER
podremos alterar el grosor de ese borde o incluso eliminarlo poniéndolo a cero.
Otra característica interesante de las imágenes es que permiten ser utilizadas como hi-
pervínculos. Para esto, es necesario crear enlace y en vez de encerrar el texto dentro de
la etiqueta <A>hay que encerrar una imagen.
Ejemplo:
<A HREF=”http://www.computersa.com”>
<IMG SRC="C:\bolt.gif" WIDTH=90 HEIGHT=80 BORDER=3 ALT="Haga Clic aquí
para comprar un computador">
</A>
Resultado:
Hay que aclarar que la base del texto es la línea donde descansan casi todas las letras
del alfabeto excepto algunas como la p, la g o la j.
Si quiere colocar el texto en el punto más alto de la imágen.
Ejemplo:
GLOBO TERRAQUEO
Ejemplo:
GLOBO TERRAQUEO
GLOBO TERRAQUEO
TABLAS
Las tablas nos permiten representar cualquier elemento de nuestra página (texto, listas,
imágenes, etc.) en diferentes filas y columnas separadas entre si. Es una herramienta
muy útil para “ordenar” contenidos de distintas partes de nuestra página.
Parámetros opcionales:
BORDER = num
Indica que se pinta el borde de la tabla y de las celdas
CELLSPACING = num
Indica el espacio que separa las celdas que están dentro de la tabla
CELLPADDING = num
Indica el espacio que separa el borde de cada celda y el contenido de esta
WIDTH = num ó %
Indica el ancho de la tabla en función del ancho de la ventana del visor. Si no se indica,
el ancho se adecuará al tamaño de los contenidos de las celdas
HEIGHT = num ó %
Indica la altura de la tabla en función del ancho de la ventana del visor. Si no se indica, la
altura se adecuará a la altura de los contenidos de las celdas
ROWSPAN = num
Indica el número de filas que ocupará la celda. Por defecto ocupa una sola fila
COLSPAN = num
Indica el número de columnas que ocupará la celda. Por defecto ocupa una sola colum-
na
ALIGN : Permite alinear el texto dentro de una celda. Acepta LEFT, RIGHT, CENTER.
VALIGN : Permite alinear el texto verticalmente dentro de una celda. Acepta TOP, BOT-
TOM, CENTER.
Ejemplo 1:
<HTML>
<HEAD>
<TITLE>PRIMERA TABLA</TITLE>
</HEAD>
<BODY>
<TABLE HEIGHT=50% WIDTH=50% BORDER=1 CELLSPACING=1>
<TR>
<TD HEIGHT=50 WIDTH=50>HOLA</TD>
<TD>AMIGOS</TD>
</TR>
<TR>
<TD>INSTITUTO</TD>
<TD>WIENER</TD>
</TR>
</TABLE>
</BODY>
</HTML>
<TD>Comienzo
de una Celda
<TR>Comienzo
de una Fila
2°) Luego viene <TR>, indica que comienza una nueva fila (horizontal) de la tabla. Una
tabla por lo menos debe tener una fila.
3°) Luego viene <TD>, que indica que comienza una celda (columna). A continuación
de este tag se coloca la información.
Ejemplo 2:
<HTML>
<HEAD>
<TITLE>SEGUNDA TABLA</TITLE>
</HEAD>
<BODY>
<TABLE HEIGHT=50% WIDTH=50% BORDER=1 CELLSPACING=1>
<TR>
<TD ALIGN=CENTER HEIGHT=25% WIDTH =25%>HOLA</TD>
<TD ALIGN=CENTER HEIGHT=25% WIDTH =25%>AMIGOS</TD>
</TR>
<TR>
<TD ALIGN=CENTER>INSTITUTO</TD>
<TD ALIGN=CENTER>WIENER</TD>
</TR>
</TABLE>
</BODY>
</HTML>
Ejemplo 3:
<HTML>
<HEAD>
<TITLE>TERCERA TABLA</TITLE>
</HEAD>
<BODY>
<TABLE BGCOLOR=GREEN HEIGHT=50% WIDTH=50% BORDER=1 CELLSPAC-
ING=1>
<TR>
<TD BGCOLOR=YELLOW ALIGN=CENTER HEIGHT=25% WIDTH=25%>HOLA</TD>
<TD BGCOLOR=CYAN ALIGN=CENTER HEIGHT=25% WIDTH=25%>AMIGOS</TD>
</TR>
<TR>
<TD BGCOLOR=RED ALIGN=CENTER>INSTITUTO</TD>
Ejemplo 4:
<HTML>
<HEAD>
<TITLE>CUARTA TABLA</TITLE>
</HEAD>
<BODY>
<H1>LISTA DE CURSOS</H1>
<TABLE BORDER=5>
<TR>
<TD>CURSO</TD><TD>HORARIO</TD>
</TR>
<TR>
<TD>WINDOWS</TD><TD>LUN - MIER 7- 10</TD>
</TR>
<TR>
<TD>WORD</TD><TD>MAR - JUE 4 - 7</TD>
</TR>
<TR>
<TD>EXCEL</TD><TD>SAB - DOM 2 - 5</TD>
</TR>
<TR>
<TD>VISUAL BASIC</TD><TD>LUN - VIER 7 - 10</TD>
</TR>
</TABLE>
</BODY>
</HTML>
Ejemplo 5:
<HTML>
<HEAD>
<TITLE>QUINTA TABLA</TITLE>
</HEAD>
<BODY>
<TABLE BORDER=10 CELLSPACING=4 CELLPADDING=4 WIDTH=80%>
<TH ALIGN=CENTER>BUSCADORES
<TH ALIGN=CENTER COLSPAN=2>OTROS LINKS
<TR>
<TH ALIGN=LEFT>YAHOO
<TH ALIGN=LEFT>MICROSOFT
<TH ALIGN=LEFT>IBM
<TR>
<TH ALIGN=LEFT>INFOSEEK
<TH ALIGN=LEFT>APPLE
<TH ALIGN=LEFT>DIGITAL
</BODY>
</HTML>
Eje
mplo 6:
<HTML>
<HEAD>
<TITLE>TABLA LOCA</TITLE>
</HEAD>
<BODY>
<TABLE BORDER=1 WIDTH=400 HEIGHT=200>
<TR>
<TD ROWSPAN=2><FONT SIZE=+1><EM>Texto por aquí…</EM></FONT>
<TD VALIGN=BOTTOM><FONT SIZE=-1>Más…</FONT>
<TD><FONT SIZE=+1 COLOR=”#FF0000”>Otro por aca…</FONT>
<TR>
<TD BGCOLOR=”#00FF00”>Y más…
<TD ROWSPAN=2 ALIGN=CENTER><FONT SIZE=+1>Y por aca…</FONT>
<TR>
<TD VALIGN=BOTTOM><FONT SIZE=+3>1A</FONT>
<TD VALIGN=BOTTOM><FONT SIZE=+3>2B</FONT>
</TABLE>
</BODY>
</HTML>
HTML permite usar el formulario en el documento como una manera básica de proveer
al usuario de un método para enviar información hacia el servidor.
Ejemplo:
nombre:
Listas de Selección
Word Para que el usuario pueda seleccionar una opción entre varias
Excel utilice un menú desplegable:
Sexo:
<SELECT NAME=”office” SIZE=3 MULTIPLE>
<OPTION VALUE=”W” >Word
<OPTION VALUE=”E” >Excel
<OPTION VALUE=”A” >Access
</SELECT>
Checkbox
Golf Para perimitir al usuario seleccionar varias opciones a la vez,se hace uso de
checkbox.
Natación
Botón de envio
Ejemplo:
Enviar comentarios
RADIO
Sexo:
<INPUT TYPE="radio" NAME=“sexo" VALUE=“M“CHECKED>Mujer
<INPUT TYPE="radio" NAME=“sexo" VALUE=“H">Hombre
<?PHP
$sexo = $_POST[‘sexo’];
print ($sexo);
?>
CHECKBOX
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="garaje" CHECKED>Garaje
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="piscina">Piscina
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="jardin">Jardín
<?PHP
$extras = $_POST[‘extras’];
$n = count ($extras);
for ($i=0; $i<$n; $i++)
print (“$extras[$i]<BR>\n”);
//foreach ($extras as $extra)
//print (“$extra<BR>\n”);
?>
BUTTON
FILE
</FORM>
HIDDEN
<?PHP
print(“<INPUT TYPE=’hidden’ NAME=’username’ VALUE=’$usuario’>\n”);
?>
<?PHP
$username = $_POST[‘username’];
print ($username);
?>
n PASSWORD
Contraseña: <INPUT TYPE="password" NAME="clave">
<?PHP
$clave = $_POST[‘clave’];
print ($clave);
?>
SUBMIT
SELECT simple
Color:
<SELECT NAME=“color">
<OPTION VALUE=“rojo" SELECTED>Rojo
<OPTION VALUE=“verde">Verde
<OPTION VALUE=“azul">Azul
</SELECT>
<?PHP
$color = $_POST[‘color’];
print ($color);
?>
SELECT simple
Color:
<SELECT NAME=“color">
<OPTION VALUE=“rojo" SELECTED>Rojo
<OPTION VALUE=“verde">Verde
<OPTION VALUE=“azul">Azul
</SELECT>
<?PHP
$color = $_POST[‘color’];
print ($color);
?>
SELECT múltiple
Idiomas:
<SELECT MULTIPLE SIZE="3" NAME="idiomas[]">
<OPTION VALUE="ingles" SELECTED>Inglés
<OPTION VALUE="frances">Francés
<OPTION VALUE="aleman">Alemán
<OPTION VALUE="holandes">Holandés
</SELECT>
<?PHP
$idiomas = $_REQUEST[‘idiomas’];
$n = count ($idiomas);
for ($i=0; $i<$n; $i++)
print (“$idiomas[$i]<BR>\n”);
//foreach ($idiomas as $idioma)
//print (“$idioma<BR>\n”);
?>
TEXTAREA
Comentario:
<TEXTAREA COLS=“50" ROWS=“4" NAME="comentario">
Este libro me parece ...
</TEXTAREA>
<?PHP
$comentario =
$_POST[‘comentario’];
print ($comentario);
?>
Formulariovarios.php
<head>
<title>CURSO DE HTML</TITLE>
</head>
<BODY bgcolor="white">
<FORM METHOD=GET ACTION='respuestaformulario.php'>
<table border=1>
<tr><td>Nombres </td><td colspan=4><INPUT TYPE=TEXT SIZE=40 MAXLENGTH=20
NAME=txtNombre></td></tr>
<tr><td>Apellidos</td><td><INPUT TYPE=TEXT SIZE=20 MAXLENGTH=40
NAME=txtApellidos></td></tr>
<tr><td>Estado Civil</td>
<td><input type="radio" name="rbtECivil" value='Soltero' checked>Soltero</td>
<td><INPUT TYPE="radio"name="rbtECivil" value='Casado'>Casado</td>
<td><INPUT TYPE="radio" name="rbtECivil" value='Viudo'>Viudo</td>
<td><INPUT TYPE="radio" name="rbtECivil" value='Divorciado'>Divorciado</td>
</tr>
<tr><td colspan=4>Cursos a llevar</td></tr>
<tr><td><INPUT TYPE=checkbox name="chkCurso" value='Word'>Word</td>
<td><INPUT TYPE=checkbox name="chkCurso" value='Excel'>Excel</td>
<td><INPUT TYPE=checkbox name="chkCurso" value='Access'>Access</td>
<td><INPUT TYPE=checkbox name="chkCurso" value='Power Point'>Power Point</td>
</tr>
<tr><td>Clave de Acces</td>
<td><INPUT TYPE =PASSWORD name=txtpass size=15 maxlength=15></td>
</tr>
<tr><td>Archivo adjunto</td>
<td><INPUT TYPE=FILE name=txtattach size=30></td></tr>
<tr>
<td>
<td><INPUT TYPE=SUBMIT NAME='btnEnviar' value='Enviar'></td>
<td><INPUT TYPE=RESET NAME='btnLimpiar' value='Borrar Datos'></td><td><INPUT
TYPE=button NAME='btnCerrar' value='Cerrar Ventana '><td></tr></table></FORM>
</BODY>
</HTML>
respuestaformulario.php
<?
$xnombre=$_GET[txtNombre];
$xapellido=$_GET[txtApellidos];
$xestadocivil=$_GET[rbtECivil];
$xcurso=$_GET[chkCurso];
$xpassword=$_GET[txtpass];
$xattach=$_GET[txtattach];
echo "El nombre es
".$xnombre. "<br>";
echo "El apellido es ".$xapellido. "<br>";
echo "Estado Civil ".$xestadocivil. "<br>";
echo "Curso ".$xcurso. "<br>";
echo "Password ".$xpassword. "<br>";echo "Archivo adjunto ".$xattach. "<br>";
?>
Ejercicios resueltos
CAPITLO III
Estructuras de Control
A partir de ahora vamos a dotar de mas "dinamismo" a nuestros scripts ya que a partir
de diversas estructuras indicaremos que acción debe realizar en cada caso, además
también nos dará la posibilidad de realizar una misma acción multitud de veces con tan
solo una línea de código.
Estructura IF
IF es una estructura de control utilizada para tomar decisiones según se cumpla una
condición (o varias) o no. Su estructura básica es la siguiente:
if(condición/es){
acción a realizar;
}
else{
acción a realizar en caso de que no se cumpla;
}
if($edad>=18){
Comprar cerveza;
}
else{
echo "No puedes comprar cerveza porque no tienes 18 años";
}
if(($edad>=18)&&($dinero>0)){
Puedes comprar cerveza porque tienes 18 y tu dinero es mayor que 0;
}
else{
echo "O no tienes pelas o no tienes los 18" ;
}
if (condición)
a)Primera Forma
if (condición)
sentencia
b)Segunda Forma
if (condición)
sentencia 1
else
sentencia 2
c)Tercera Forma(if anidado)
if (condición1)
sentencia 1
else if (condición2)
sentencia 2
...
else if (condición n)
sentencia n
else
sentencia n+1
Ejemplo de estructura selectiva if-else:
7
ejer005.php If(primera forma)
<?
$edad=28;
if ($edad>=0&&$edad<=13)
echo "niño";
if ($edad>=14&&$edad<=17)
echo "adolescente";
if ($edad>=18&&$edad<=60)
echo "adulto";
if ($edad>=60&&$edad<=120)
echo "anciano";
if ($edad<=0||$edad>=120)
echo "no existe";
?>
?>
if ($x>=18)
$id=1;
else
$id=2;
?>
<form name=form1 method=get action=ejer008.php>
<table border=1>
<tr><td>INGRESE EDAD</td>
<td><input type=text name=txtedad></td></tr>
<?
echo "<tr><td colspan=2><img src='../capitulo02/imagenes/imagen0".$id.".jpg'
width=300 height=300></img></td></tr>";
?>
<tr><td colspan=2><input type=submit value='Enviar'></td></tr>
</table>
</form>
MENOR DE EDAD
MAYOR DE EDAD
Estructura SWITCH
switch(expresión){
case valor1:
sentencia a ejecutar cuando la expresión tiene como valor valor1
break
case valor2:
sentencia a ejecutar cuando la expresión tiene como valor valor2
break
case valor3:
sentencia a ejecutar cuando la expresión tiene como valor valor3
break
default:
sentencia que se ejecutar por defecto cuando no se cumpla ninguna de las
condiciones anteriores
ejer009.php
<?
$dia="Miercoles";
switch($dia)
{
case "Lunes":
{echo "Dia Lunes";break;}
case "Martes":
{echo "Dia Martes";break;}
case "Miercoles":
{echo "Dia Miercoles";break;}
case "Jueves":
{echo "Dia Jueves";break;}
case "Viernes":
{echo "Dia Viernes";break;}
case "Sabado":
{echo "Dia Sabado";break;}
case "Domingo":
{echo "Dia Domingo";break;}
default:
{echo "Dia No Existe";break;}
}
?>
En este ejercicio se muestra una lista de fotos con la lista de selección tal como se ob-
serva:
Practica Dirigida
Sentencia echo
Primer Programa
Para crear programas en php debe guardar el archivo dentro de una carpeta en la ruta
1.- Mostrar la configuración del servidor
<?
phpinfo();
?>
<?
echo("¡Hola Mundo!<BR>");
?>
Ejer004.php
<?php
$a=12;$b=20;
$suma=$a+$b;
$resta=$a-$b;
$multi=$a*$b;
$divi=$a/$b;
echo "El valor de a es==>".$a."<br>";
echo "El valor de b es==>".$b."<br>";
echo "El valor de la suma es==>".$suma."<br>";
echo "El valor de la resta es==>".$resta."<br>";
echo "El valor de la multiplicacion es==>".$multi."<br>";
echo "El valor de la division es==>".$divi."<br>";
BienvenidaPost.php
<?php
$xnombre=$_POST["txtnombre"];
$xedad=$_POST["txtedad"];
echo "<h1><font color=blue</h1><br>";
echo "Su nombre es <font co-
lor=red>".$xnombre."</font><br>";
echo "Su edad es <font color=red>".$xedad."</font><br>";
EjerFormularioGET.php
<body>
<form name=fmr1 method=GET action=bienvenidaGET.php>
<table border="1">
<tr><th colspan="2">DATOS PERSONALES</th></tr>
<tr>
<td>INGRESE NOMBRE</td>
<td><input type="text" name="txtnombre"></td>
</tr>
<tr>
<td>INGRESE EDAD</td>
<td><input type="text" name="txtedad"></td>
</tr>
<tr>
<td>
<input type="submit" name="btnenviar">
</td>
<td>
<input type="reset" name="btnuevo">
</td>
</tr>
</table>
</form>
</body>
BienvenidaGET.php
<?php
$xnombre=$_GET["txtnombre"];
$xedad=$_GET["txtedad"];
echo "<h1><font color=blue</h1><br>";
echo "Su nombre es <font co-
lor=red>".$xnombre."</font><br>";
echo "Su edad es <font co-
lor=red>".$xedad."</font><br>";
Estructuras de Control
Estructura if
ejercicioif.php
<? $edad=28;
if ($edad>=0&&$edad<=13)
echo "niño";
else
if ($edad>=14&&$edad<=17)
echo "adolescente";
else if ($edad>=18&&$edad<=60)
echo "adulto";
elseif ($edad>=60&&$edad<=120)
echo "anciano";
else
if ($edad<=0||$edad>=120)
<?Php
$i=0;$xtalla = "";
echo "i= ",$i;
if( isset($_GET['txttalla'])) {
$xtalla= $_GET['txttalla']; } EjemploTallas.php
if ($xtalla>0&&$xtalla<=1.55)
$i=1;
else if($xtalla>1.55&&$xtalla<=1.85)
$i=2;
else if($xtalla>1.85&&$xtalla<=2.2)
$i=3;
?>
<body>
<form name=fmr1 method=GET action=EjemploTallas.php>
<table border="1">
<tr><th colspan="2">EJEMPLO TALLAS</th></tr>
<tr>
<td>INGRESE TALLA</td>
<td><input type="text" name="txttalla" onClick="foco('txtta');"></td>
</tr>
<tr>
<td colspan="2">
<?php
echo "<img src=imagenes/imagen0".$i.".jpg></img>";
?>
</td>
</tr>
<td>
<input type="submit" name="btnenviar">
</td>
<td>
<input type="reset" name="btnuevo">
</td>
</tr>
</table>
</form>
</body>
Lazos
<?
echo "<h1>Lazo While</h1>"."<br>";
$a=1;
while ( $a<=9)
{$a +=1;
echo "valor de a====>". $a."<br>";
}?>
<?
echo "<h1>Lazo For</h1>"."<br>";
for($a=1;$a<10;$a++)
{
echo "valor de a====>". $a."<br>";
}
?>
Controles en Formularios
RADIO
Sexo:
<INPUT TYPE="radio" NAME=“sexo" VALUE=“M“CHECKED>Mujer
<INPUT TYPE="radio" NAME=“sexo" VALUE=“H">Hombre
<?PHP
$sexo = $_POST[‘sexo’];
print ($sexo);
?>
CHECKBOX
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="garaje" CHECKED>Garaje
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="piscina">Piscina
<INPUT TYPE="checkbox" NAME="extras[]" VALUE="jardin">Jardín
<?PHP
$extras = $_POST[‘extras’];
$n = count ($extras);
for ($i=0; $i<$n; $i++)
print (“$extras[$i]<BR>\n”);
//foreach ($extras as $extra)
//print (“$extra<BR>\n”);
?>
SELECT simple
Color:
<SELECT NAME=“color">
<OPTION VALUE=“rojo" SELECTED>Rojo
<OPTION VALUE=“verde">Verde
<OPTION VALUE=“azul">Azul
</SELECT>
<?PHP
$color = $_POST[‘color’];
print ($color);
?>
SELECT múltiple
Idiomas:
<SELECT MULTIPLE SIZE="3" NAME="idiomas[]">
<OPTION VALUE="ingles" SELECTED>Inglés
<OPTION VALUE="frances">Francés
<OPTION VALUE="aleman">Alemán
<OPTION VALUE="holandes">Holandés
</SELECT>
<?PHP
$idiomas = $_REQUEST[‘idiomas’];
$n = count ($idiomas);
for ($i=0; $i<$n; $i++)
print (“$idiomas[$i]<BR>\n”);
//foreach ($idiomas as $idioma)
//print (“$idioma<BR>\n”);
?>
</body>
Ejercicio2
<script>
function escoge(combo)
{
url="Lista1.php?codigo="+combo;
document.location.replace(url);
}
</script>
<?
$cod=$_GET[codigo];
echo "Has escodigo la opcion===>".$cod."<br>";
?>
<body>
<form name="form1" method="GET" action="ListaJava.php" on-
change='escoge(document.form1.office.selectedIndex)'>
<SELECT NAME="office" size="3" MULTIPLE>
<OPTION VALUE="W">WORD</OPTION>
<OPTION VALUE="E">EXCEL</OPTION>
<OPTION VALUE="A">ACCESS</OPTION>
</select>
</body>
Formulariovarios.php
<head>
<title>CURSO DE HTML</TITLE>
</head>
<BODY bgcolor="white">
<FORM METHOD=GET ACTION='respuestaformulario.php'>
<table border=1>
<tr><td>Nombres </td><td colspan=4><INPUT TYPE=TEXT SIZE=40 MAXLENGTH=20
NAME=txtNombre></td></tr>
<tr><td>Apellidos</td><td><INPUT TYPE=TEXT SIZE=20 MAXLENGTH=40
NAME=txtApellidos></td></tr>
<tr><td>Estado Civil</td>
<td><input type="radio" name="rbtECivil" value='Soltero' checked>Soltero</td>
<td><INPUT TYPE="radio"name="rbtECivil" value='Casado'>Casado</td>
<td><INPUT TYPE="radio" name="rbtECivil" value='Viudo'>Viudo</td>
<td><INPUT TYPE="radio" name="rbtECivil" value='Divorciado'>Divorciado</td>
</tr>
<tr><td colspan=4>Cursos a llevar</td></tr>
<tr><td><INPUT TYPE=checkbox name="chkCurso" value='Word'>Word</td>
<td><INPUT TYPE=checkbox name="chkCurso" value='Excel'>Excel</td>
<td><INPUT TYPE=checkbox name="chkCurso" value='Access'>Access</td>
<td><INPUT TYPE=checkbox name="chkCurso" value='Power Point'>Power Point</td>
</tr>
<tr><td>Clave de Acces</td>
<td><INPUT TYPE =PASSWORD name=txtpass size=15 maxlength=15></td>
</tr>
<tr><td>Archivo adjunto</td>
<td><INPUT TYPE=FILE name=txtattach size=30></td></tr>
<tr>
<td>
<td><INPUT TYPE=SUBMIT NAME='btnEnviar' value='Enviar'></td>
<td><INPUT TYPE=RESET NAME='btnLimpiar' value='Borrar Datos'></td><td><INPUT
TYPE=button NAME='btnCerrar' value='Cerrar Ventana '><td></tr></table></FORM>
</BODY>
</HTML>
respuestaformulario.php
<?
$xnombre=$_GET[txtNombre];
$xapellido=$_GET[txtApellidos];
$xestadocivil=$_GET[rbtECivil];
$xcurso=$_GET[chkCurso];
$xpassword=$_GET[txtpass];
$xattach=$_GET[txtattach];
echo "El nombre es ".$xnombre.
"<br>";
echo "El apellido es ".$xapellido. "<br>";
echo "Estado Civil ".$xestadocivil. "<br>";
echo "Curso ".$xcurso. "<br>";
echo "Password ".$xpassword. "<br>";echo "Archivo adjunto ".$xattach. "<br>";
?>
Lazos
<?
echo "<h1>Lazo While</h1>"."<br>";
$a=1;
while ( $a<=9)
{$a +=1;
echo "valor de a====>". $a."<br>";
}?>
<?
echo "<h1>Lazo For</h1>"."<br>";
for($a=1;$a<10;$a++)
{
echo "valor de a====>". $a."<br>";
}
?>
Funciones en PHP
Una de las herramientas mas importantes en cualquier lenguaje de programación son las
funciones. Una función consiste en un conjunto de rutinas y acciones que a lo largo del
script van a ser ejecutadas multitud de veces agrupados en una FUNCION y desde cual-
quier punto del script puede ser llamada y ejecutada. A su vez, esta función puede recibir
parámetros externos de los cuales dependa el resultado de una función.
Las funciones deben ser colocadas siempre antes de realizar la llamada a la función
(como es lógico). La sintaxis de una función es la siguiente:
function nombre(parámetros){
instrucciones de la función
}
para llamar a la función sería de la siguiente forma: nombre(parámetros)
function sumar($sumando1,$sumando2){
$ suma=$sumando1+$sumando2
echo $sumando1."+".$sumando2."=".$suma;
}
sumar(5,6)
Un hecho relevante que cabe destacar es que las variables que declaremos dentro de la
función solo existirán o tendrán dicho valor dentro de la función.
muestranombre (“Fernández”);
muestranombre (“Fernández”, "Prof.");
?>
ARRAY ASOCIATIVOS
Estas variables no tienen asignados valores, sino elementos de array que son datos
que están asociados, a su vez, a un elemento del array llamado índice.
Este índice se caracteriza por conectar los elementos del array por medio de una nume-
ración que empieza por cero. Así, el primer elemento del array tiene índice cero, el se-
gundo tiene índice uno, y así sucesivamente.
Pero en realidad, resulta que este índice es numérico solo por defecto; es decir, te-
nemos la posibilidad de crear nuestro propio índice dentro de un array. Cuando ha-
cemos esto, estamos conviertiendo el array en un array asociativo.
<?php
$menu = array(
’Primer plato’ => ’Fabada’,
’Segundo plato’ => ’Solomillo’,
’Postre’ => ’Manzana verde’
);
?>
En el paréntesis del array, tenemos que asociar el índice con el valor por medio del
operador =>. Después, para acceder al un elemento del array asociativo tenemos
que escribir la variable asignada al array, y posteriormente escribir entre corchetes el
índice que hemos asignado a dicho elemento del array.
<?php
$indice = ’favorito’;
$color = array($indice => ’violeta’);
echo $color[$indice];
?>
Este concepto de asociar datos a elementos del array por medio del índice nos permitirá
dar el siguiente paso en el tema de los arrays. Ahora estamos preparados para ver unas
matrices más complejas…
Asociativo01.php
<?
//datos iniciales de la agenda
$agenda=
array(array('Nombre'=>'JORGE','Direccion'=>'Av Brasil
210','Telefono'=>9393993,'email'=>'victor@hotmail.com'),
array('Nombre'=>'VICTOR','Direccion'=>'AV Canada
455','Telefono'=>94593993,'email'=>'cinthya@hotmail.com'),
array('Nombre'=>'ZOILA','Direccion'=>'Av Peru 6210','Telefono'=>93963993,
'email'=>'jorge@hotmail.com'));
foreach($agenda as $clave=>$valor)
{
echo "clave==>",$clave,"<br>";
echo "valor==>",$valor[Nombre],"<br>";
echo "valor==>",$valor[Direccion],"<br>";
echo "valor==>",$valor[Telefono],"<br>";
echo "valor==>",$valor[email],"<br>";
}
echo "<br>";
echo "<table border=1>";
echo
"<tr><th>X</th><th>Nombre</th><th>Direccion</th><th>Telefono</th><th>Email</th></tr>";
for($x=0;$x<count($agenda);$x++)
{
echo "<tr><td>".$x."</td>";
echo "<td>".$agenda[$x][Nombre]."</td>";
echo "<td>".$agenda[$x][Direccion]."</td>";
echo "<td>".$agenda[$x][Telefono]."</td>";
echo "<td>".$agenda[$x][email]."</td></tr>";
}
echo "</table>";
?>
arreglo02.php
<?
//datos iniciales de la agenda
$agenda=
array(array('Nombre'=>'JORGE','Dirección'=>'Av Brasil
210','Telefono'=>9393993,'email'=>'victor@hotmail.com'),
array('Nombre'=>'VICTOR','Dirección'=>'AV Canada
455','Telefono'=>94593993,'email'=>'cinthya@hotmail.com'),
array('Nombre'=>'ZOILA','Dirección'=>'Av Peru 6210','Telefono'=>93963993,
'email'=>'jorge@hotmail.com'));
foreach($agenda as $clave=>$valor)
{
echo "clave==>",$clave,"<br>";
echo "valor==>",$valor[Nombre],"<br>";
echo "valor==>",$valor[Dirección],"<br>";
echo "valor==>",$valor[Telefono],"<br>";
echo "valor==>",$valor[email],"<br>";
}
for($x=0;$x<count($agenda);$x++)
{
echo "<table border=1>";
echo "<tr><td>".$agenda[$x][Nombre]."<td>";
echo "<td>".$agenda[$x][Direccion]."<td>";
echo "<td>".$agenda[$x][Telefono]."<td>";
echo "<td>".$agenda[$x][email]."<td></tr>";
echo "</table>";
}
Ejemplos con array asociativos
<?
$color=array('rojo'=>101,'verde'=>51,'azul'=>255);
$medidas=array(10,25,15);
echo $color['rojo'],"<br>";
echo $color['verde'],"<br>";
echo $color['azul'],"<br>";
echo $medidas[0];
?>
prueba9.php
<?
$color=array('rojo'=>101,'verde'=>51,'azul'=>255);
foreach($color as $valor)
{echo "valor:=>",$valor."<br>";}
foreach($color as $clave=>$valor)
{echo "Clave:", $clave."<br>";
echo "Valor:",$valor."<br>";
}
?>
Prueba10.php
<?
$arrValores[0] = 1;
$arrValores[1] = "Una cadena";
echo("En \$arrValores[0] está$arrValores[0] y en "."\$arrValores[1] es-
tá$arrValores[1]<BR>");
?>
prueba11.php
<?
$arrValores[] = 1;
$arrValores[] = "Una cadena";
echo("En \$arrValores[0] está$arrValores[0] y en " . "\$arrValores[1] es-
tá$arrValores[1]<BR>");
?>
prueba12.php
<?
$arrValores= Array(1, "Una cadena");
echo("En \$arrValores[0] está$arrValores[0] y en " . "\$arrValores[1] es-
tá$arrValores[1]<BR>");
?>
prueba13.php
<?
$arrValores["nombre"] = "Tancredo";
$arrValores["Apellidos"] = array("Gómez", "Jiménez");
echo("En \$arrValores[\"nombre\"] está$arrValores[nombre] y " . "en
\$arrValores[\"Apellidos\"] está" . $arrValores["Apellidos"][0] . " y " . $arrValo-
res[Apellidos][1] . "<BR>");
?> prueba14.php
<?
$arrValores=array( "nombre" => "Tancredo", "Apellidos" => array("Gómez", "Jiménez"));
Creación de tablas por medio de variables tipo array. Utilidad y funciones útiles
relacionadas.
Un tipo de variable que ya hemos descrito pero puede ser relativamente complicado a
asimilar con respecto a la mayoría son los arrays. Un array es una variable que está
compuesta de varios elementos cada uno de ellos catalogado dentro de ella misma por
medio de una clave.
$sentido[1]="ver";
$sentido[2]="tocar";
$sentido[3]="oir";
$sentido[4]="gustar";
$sentido[5]="oler";
En este caso este array cataloga sus elementos, comunmente llamados valores, por
números. Los números del 1 al 5 son por lo tanto las claves y los sentidos son los valo-
res asociados. Nada nos impide emplear nombres (cadenas) para clasificarlos. Lo único
que deberemos hacer es entrecomillarlos:
<?
$moneda["espana"]="Peseta";
$moneda["francia"]="Franco";
$moneda["usa"]="Dolar";
?>
Otra forma de definir idénticamente este mismo array y que nos puede ayudar para la
creación de arrays más complejos es la siguiente sintaxis:
<?
$moneda=array("espana"=> "Peseta","francia" => "Franco","usa" => "Dolar");
?>
Una forma muy practica de almacenar datos es mediante la creación de arrays multidi-
mensionales (tablas). Pongamos el ejemplo siguiente: Queremos almacenar dentro de
una misma tabla el nombre, moneda y lengua hablada en cada país. Para hacerlo po-
demos emplear un array llamado país que vendrá definido por estas tres características
(claves). Para crearlo, deberíamos escribir una expresión del mismo tipo que la vista an-
teriormente en la que meteremos una array dentro del otro. Este proceso de incluir una
instruccion dentro de otra se llama anidar y es muy corriente en programación:
<?
$pais=array
(
"espana" =>array
(
"nombre"=>"España",
"lengua"=>"Castellano",
"moneda"=>"Peseta"
),
"francia" =>array
(
"nombre"=>"Francia",
"lengua"=>"Francés",
"moneda"=>"Franco"
)
);
echo $pais["espana"]["moneda"] //Saca en pantalla: "Peseta"
?>
Antes de entrar en el detalle de este pequeño script, comentemos algunos puntos refe-
rentes a la sintaxis. Como puede verse, en esta secuencia de script, no hemos introduci-
do punto y coma ";" al final de cada línea. Esto es simplemente debido a que lo que he-
mos escrito puede ser considerado como una sola instrucción. En realidad, somos noso-
tros quienes decidimos cortarla en varias líneas para, así, facilitar su lectura. La verdade-
ra instrucción acabaría una vez definido completamente el array y es precisamente ahí
donde hemos colocado el único punto y coma. Por otra parte, podéis observar cómo
hemos jugado con el tabulador para separar unas líneas más que otras del principio. Es-
to también lo hacemos por cuestiones de claridad, ya que nos permite ver qué partes del
código están incluidas dentro de otras. Es importante acostumbrarse a escribir de esta
forma del mismo modo que a introducir los comentarios ya que la claridad de los scripts
es fundamental a la hora de depurarlos. Un poco de esfuerzo a la hora de crearlos pue-
de ahorrarnos muchas horas a la hora de corregirlos o modificarlos meses más tarde.
Pasando ya al comentario del programa, como podéis ver, éste nos permite almacenar
tablas y, a partir de una simple petición, visualizarlas un determinado valor en pantalla.
Lo que es interesante es que la utilidad de los arrays no acaba aquí, sino que también
podemos utilizar toda una serie de funciones creadas para ordenarlos por orden alfabéti-
co directo o inverso, por claves, contar el numero de elementos que componen el array
además de poder movernos por dentro de él hacia delante o atrás.
Muchas son las funciones propuestas por PHP para el tratamiento de arrays, no vamos
a entrar aquí en una descripción de las mismas. Sólo incluiremos esta pequeña tabla
que puede ser complementada, si necesario, con la documentación que ya hemos
mencionado.
Función Descripción