Logo Studenta

Fundamentos_de_programacion_en_php

¡Este material tiene más páginas!

Vista previa del material en texto

PROGRAMACIÓN CON 
FUNDAMENTOSDE
FAVA - Formación en Ambientes Virtuales de Aprendizaje
SENA - Servicio Nacional de Aprendizaje.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
2SENA - Servicio Nacional de Aprendizaje.
Estructura de contenidos
Pág
Introducción .......................................................................................................................4
Mapa de contenido ............................................................................................................5
1. Generalidades del lenguaje ...........................................................................................6
1.1. Historia de PHP ..........................................................................................................7
1.2. Programación en PHP ...............................................................................................7
1.2.1. Entorno de desarrollo XAMPP .................................................................................8
1.2.2. Entorno de desarrollo EasyPHP ..............................................................................9
1.3. Características del Lenguaje ................................................................................... 10
1.3.1. Comentarios ..........................................................................................................11
1.3.2. Instrucciones .........................................................................................................11
1.4. Modo de consola ..................................................................................................... 12
1.5. Modo embebido o incrustado en páginas web ........................................................ 13
2. Elementos del lenguaje PHP ...................................................................................... 14
2.1. Variables .................................................................................................................. 14
2.2. Constantes .............................................................................................................. 15
2.3. Tipos de datos ........................................................................................................ 16
2.3.1. Tipos de datos escalares ...................................................................................... 16
2.3.2. Tipos de datos compuestos .................................................................................. 16
2.4. Operadores.............................................................................................................. 18
2.5. Estructuras de Control ............................................................................................. 21
2.6. Funciones. ............................................................................................................... 29
2.7. Inclusión de librerías o bibliotecas de código. ......................................................... 30
2.8. Obtener información sobre el tipo de una variable .................................................. 30
2.9. Variables superglobales. ......................................................................................... 31
3. Usos prácticos de php ............................................................................................... 31
3.1. Formularios web ...................................................................................................... 31
3.1.1. Paso de variables a un programa PHP ................................................................ 32
3.2. Acceso a bases de datos desde PHP .................................................................... 36
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
3SENA - Servicio Nacional de Aprendizaje.
3.2.1. mysqli o Mysql Improved ...................................................................................... 38
3.2.2. Librería mysql ....................................................................................................... 43
3.2.3. Librería PDO......................................................................................................... 43
3.3. Manejo de sesiones................................................................................................. 43
Glosario .......................................................................................................................... 45
Bibliografía...................................................................................................................... 46
Control del documento ................................................................................................... 47
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
4SENA - Servicio Nacional de Aprendizaje.
FUNDAMENTOS DE PROGRAMACIÓN CON PHP
Las aplicaciones con interfaz de caracteres (CUI) o interfaz gráfica nativa (GUI) fueron el 
común denominador durante muchos años. Con el auge del Internet y con el crecimiento 
la conectividad de las empresas y hogares se hizo necesario el desarrollo de aplicaciones 
más robustas que se ejecutaran en un navegador y de esta manera pudieran estar 
disponibles a cualquier computador conectado a Internet.
Para hacer más potentes las aplicaciones web se requería de un lenguaje que pudiera 
ejecutarse del lado del servidor y pudiera generar páginas HTML de manera más dinámica 
y además pudiera interactuar con bases de datos y demás recursos disponibles a los 
servidores. Es así como aparece el lenguaje PHP, el cual permite el desarrollo web con 
páginas más dinámicas generadas desde un servidor web que además puede interactuar 
con bases de datos libre como MySQL o Postgres o licenciadas como Oracle, SQL Server, 
Informix, entre otros.
En este material de estudio se presentan al aprendiz los fundamentos de PHP como 
lenguaje procedural; la presentación de PHP como un lenguaje orientado a objetos 
se detallará en otro recurso adicional. Dentro de los temas a tratar están el manejo de 
variables, estructuras de control, estructuras cíclicas, arreglos, y una introducción a la 
interacción con bases de datos con PHP y el manejo de sesiones.
Para lograr una mejor comprensión de los contenidos es importante que el aprendiz tenga 
claro los conceptos de diseño web y el manejo de bases de datos. El presente material 
de estudio es de nivel introductorio y cubre los aspectos más relevantes del lenguaje. Es 
importante que el aprendiz profundice el conocimiento con la bibliografía suministrada y 
con consultas a los recursos disponibles en la Internet.
Introducción
 Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
5SENA - Servicio Nacional de Aprendizaje.
Mapa de contenido
PROGRAMACIÓN CON 
FUNDAMENTOSDE
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
6SENA - Servicio Nacional de Aprendizaje.
Generalidades
1. Generalidades del lenguaje
PHP es un lenguaje de programación interpretado y débilmente tipado, 
libre y gratuito que permite el desarrollo de páginas web dinámicas, junto al servidor 
Apache y la base de datos Mysql han creado una completa plataforma para desarrollo de 
aplicaciones web.
Las páginas HTML con código PHP embebido que se ejecutan en el servidor pueden 
realizar accesos a bases de datos y otras tareas. El cliente solamente recibe una página 
con el código HTML resultante de la ejecución del programa PHP.
Como la página resultante contiene únicamente código HTML es compatible con todos 
los navegadores.
Figura 1. Diagrama de operación de PHP.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
7SENA - Servicio Nacional de Aprendizaje.
1.1. Historia de PHP
• PHP/FI 1995
Creado por Rasmus Lerdorf permitía desarrollar pequeñas 
aplicaciones web dinámicas.• PHP 3.0 1997
Creado por Andy Gutmans y Zeev Zuraski. Una de sus grandes 
características era su gran extensibilidad. El soporte de sintaxis 
orientado a Objetos fue otra característica clave.
Esta versión fue liberada oficialmente en Junio de 1998.
• PHP 4.0 1999
Utilizó el motor “Motor Zend” de Zeev, Andy. Fue Oficialmente liberado en mayo de 2000. 
Además de la mejora de ejecución, incluía otras características claves como soporte 
para la mayoría de servidores web, sesiones HTTP, buffers de salida y muchas nuevas 
construcciones del Lenguaje.
• PHP 5 2004
Utiliza el motor Zend Engine II. Entre sus características se encuentran: Mejor soporte a 
la programación orientada a Objetos. Mejoras de Rendimiento. Mejoras para MySQL y 
XML. Soporte integrado para SOAP. Manejo de Excepciones.
• PHP 7 2015
Introduce nuevas funciones y características entre ellas se tienen: declaración de 
constantes tipo arreglo, clases anónimas, operador tipo nave espacial (<=>), declaración 
para el tipo de dato que retorna una función, entre otros.
1.2. Programación en PHP 
Para desarrollar en PHP se requiere un entorno de desarrollo compuesto por:
A B
Algunos ejemplos de plataformas que incorporan Apache (Servidor de páginas web), 
MySQL (Bases de Datos) y soporte al lenguaje PHP, son:
a. LAMP (Linux).
b. WAMP (Windows).
c. MAMP (MacOSX).
Un servidor web que tenga instalado una 
extensión (en linux) o librería (en windows) que 
permita identificar el código PHP y lo pueda 
enviar al intérprete de este lenguaje instalado 
en el servidor.
Tener instalado el 
intérprete del lenguaje 
PHP en el servidor. 
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
8SENA - Servicio Nacional de Aprendizaje.
Además del servidor web Apache, PHP también está disponible para Nginx, IIS, entre 
otros.
1.2.1. Entorno de desarrollo XAMPP
La instalación de un ambiente de desarrollo que incorpore Apache, PHP y 
una base de datos de amplio uso como MySQL no fue una tarea fácil de 
realizar ya que se presentaban dificultades por incompatibilidades entre 
las distintas versiones de los productos, configuraciones propias de cada 
sistema operativo, entre otros.
Para facilitar la labor a los programadores se han creado ambientes de desarrollo que 
incorporan los componentes anteriormente descritos sin que el desarrollador tenga que 
realizar complejas tareas de configuración. 
Uno de esos entornos es XAMPP que integra Apache, Mysql, PHP y otros lenguajes. 
Fue concebido por apachefriends.org y está disponible para plataformas Windows, Linux 
y MacOS. 
Su sitio de descarga es https://www.apachefriends.org/es/download.html.
Una vez instalado el paquete, se debe iniciar el servidor mediante el panel de control de 
la herramienta. 
Es importante aclarar que el panel de control puede variar, dependiendo de la versión de 
XAMPP que se tenga instalada.
Figura 2. Panel de control de XAMPP.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
9SENA - Servicio Nacional de Aprendizaje.
Al copiar el archivo prueba.php al directorio “x:/xampp/htdocs” y abrirlo con un navegador 
deberá mostrar los siguiente:
Figura 3. Resultado de la función phpinfo().
Un aspecto fundamental al momento de trabajar con PHP es la ruta donde se encuentran 
las páginas que debe procesar el servidor. Para el caso de Xampp, se debe ubicar la 
carpeta de instalación “xampp” y dentro de ésta carpeta ubicar la subcarpeta “htdocs”, 
donde se deben ubicar todas las páginas que se desarrollen.
Para visualizar los resultados de una página PHP, se debe acceder desde el navegador 
web ingresando al sitio del servidor local, el cual se identifica con la palabra “localhost”. 
Solo se mostrarán resultados de las páginas publicadas en el directorio web “htdocs”.
En este recurso se hace uso del entorno para desarrollar los ejemplos de código.
1.2.2. Entorno de desarrollo EasyPHP
Otro entorno de desarrollo que integra las herramientas Apache, Mysql y 
PHP es EasyPHP y está disponible en http://www.easyphp.org/.
Independientemente del entorno que se use se puede revisar que PHP está 
instalado en el servidor web ejecutando el siguiente código:
// prueba.php
<php> 
 printf( phpinfo() ) ;
?>
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
10SENA - Servicio Nacional de Aprendizaje.
Además de la versión de PHP también se muestran otros datos importantes de la 
instalación como el directorio donde está instalado xampp, la versión de la base de datos, 
entre otros.
1.3. Características del Lenguaje
El código PHP, está embebido dentro del código HTML, esto significa que el intérprete 
solo ejecuta las instrucciones que están incluidas dentro de las etiquetas manejadas por 
el lenguaje. Todo lo que está fuera de las etiquetas PHP se deja tal como está, mientras 
que el resto se interpreta como código.
La estructura general de una página web con código PHP embebido es la siguiente 
(COWBURN, 2017):
<html>
 <body>
 <?php
 // El código php va aquí. 
 ?>
 </body>
</html>
<?php
// El código php va aquí.
// Cuando solamente hay código PHP se puede omitir el tag de 
cierre.
El archivo debe tener la extensión .php para que el servidor procese el código PHP 
embebido, de lo contrario lo ignorará.
El tag de inicio estándar es “<? php” y el tag de cierre es “?>”. 
Existe la posibilidad de usar “tags” abreviados pero no se aconsejan para que el código 
quede más entendible.
El tag de cierre se puede omitir cuando el archivo tiene solamente código PHP. Ejemplo:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
11SENA - Servicio Nacional de Aprendizaje.
1.3.1. Comentarios
PHP al igual que otros lenguajes de programación maneja 
comentarios de una sola línea y de múltiples líneas, soporta el 
estilo de comentarios de los lenguajes de programación “C”, “C++” 
y de interfaz de comandos de UNIX.
a. Comentarios de una sola línea: se puede realizar anteponiendo el símbolo “#” o dos 
barras inclinadas seguidas “//” al inicio de la línea. No necesitan cerrarse.
b. Comentarios de más de una línea: se pueden realizar comentarios que abarquen más 
de una línea usando los símbolos “/*” al inicio y “*/” al final.
<?php
 // este es comentario de una línea
 # este es otro comentario de una línea.
 echo "hola mundo" ;
?>
<?php
 /* 
este es comentario abarca varias líneas.
Los comentarios son útiles para documentar los 
programas.
 */
 echo "hola mundo" ;
?>
1.3.2. Instrucciones
 Todas las instrucciones en PHP finalizan con punto y coma. Es muy importante 
que antes de incluir el conjunto de instrucciones, se inicie el bloque PHP “<? 
php” y una vez se terminen las instrucciones, se finalice el bloque con “?>”.
Para construir las sentencias se necesitan diferentes elementos que ya se 
han trabajado en otros lenguajes de programación, estos elementos son, 
variables, constantes, operadores, estructuras de control, entre otros.
Antes de iniciar con los ejercicios se debe tener en cuenta lo siguiente:
1. Crear el archivo con extensión php, el cual contiene el respectivo código HTML, estos 
conceptos los trabajaron previamente en el Objeto de aprendizaje “Introducción al 
diseño web con HTML”.
2. Dentro del código HTML, se debe vincular las respectivas instrucciones PHP.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
12SENA - Servicio Nacional de Aprendizaje.
3. Los archivos PHP, deben estar incluidos dentro de la carpeta htdocs de xampp.
1.4. Modo de consola
Además de estar embebido o incrustado dentro de una página web el código PHP también 
puede ser interpretado en modo de consola.
Para ejecutar programas php en modo de consola se deben seguir los siguientes pasos:
 
a. Ejecutar la consola desde el administrador de la aplicación XAMPP.
b. Ejecutar el programa con el comando la siguiente sintaxis : 
Figura 4. Ubicación delbotón para entrar a la consola en XAMPP.
#php <nombre_del_programa>.php
#php -v
# php -v
PHP 5.6.31 (cli) (built: Jul 5 2017 22:25:43)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend 
Technologies
USUARIO@DESKTOP-7971D4H d:\xampp\htdocs
#
Para verificar la versión de PHP que se está ejecutando 
se puede usar el siguiente comando:
El resultado del anterior 
comando es el siguiente:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
13SENA - Servicio Nacional de Aprendizaje.
1.5. Modo embebido o incrustado en páginas web
Además del modo de consola PHP también se ejecuta dentro de las páginas web. Es esta 
modalidad la que más se usa de PHP ya que es la base para el desarrollo de páginas 
web dinámicas.
Para ejecutar un programa PHP embebido en una página web se require que el servidor 
web como por ejemplo Apache, Nginx, IIS tengan instalada la extensión del lenguaje. Lo 
anterior permite que los archivos con extensión PHP sean procesados por el interprete 
de este lenguaje.
A continuación el programa “hola mundo”.
Figura 5. Resultado del programa holamundo.php.
<html>
<body>
<?php
echo "Hola Mundo";
?>
</body>
</html>
1
2
3
4
5
6
7
<html>
<body>
<?php
echo "Hola Mundo";
?>
</body>
</html>
1
2
3
4
5
6
7
<html>
<body>
<?php
echo "Hola Mundo";
?>
</body>
</html>
1
2
3
4
5
6
7
Estas líneas de código se guardan con el nombre: “holamundo.php” en el directorio htdocs 
de la instalación XAMPP, generalmente “d:/xammp/htdocs/holamundo.php”.
Una vez puesto el archivo en el directorio se puede visualizar en el navegador como se 
muestra a continuación:
En el ejemplo anterior el código PHP incrustado en la página web es analizado por el 
intérprete del lenguaje. El resultado es dibujado en la sección <body> de la página.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
14SENA - Servicio Nacional de Aprendizaje.
2. Elementos del lenguaje PHP
2.1. Variables
En PHP, las variables se representan con el signo dólar ($), seguido del respectivo nombre 
de variable. Sen Utilizan los estándares de los lenguajes de programación para nombrar 
variables y PHP es sensible a mayúsculas y minúsculas. Ejemplo:
<?php
 // Ejemplos de declaración de variables.
 $nombre = "Pedro"; // variable tipo texto;
 $apellido = "Perez"; // variable tipo texto;
 $edad = 45; // variable numérica ;
 
 echo "El señor ". $nombre . " " . $apellido . " tiene una 
edad de ". $edad . " años. " ;
?>
PHP es un lenguaje débilmente tipado ( en inglés “loosely typed“) y no requiere que las 
variables se definan antes de usarse.
De acuerdo a su visibilidad y accesibilidad dentro de un programa las variables pueden 
ser de los siguientes tipos:
a. Variables locales: son aquellas que se definen dentro de una función y son usadas 
exclusivamente por estas últimas.
b. Variables globales: son aquellas que pueden ser accedidas dentro de cualquier 
parte de un programa. Por defecto las variables definidas por fuera de una función 
son globales. Dentro de una función se definen anteponiendo la palabra reservada 
“global” al nombre de la variable. 
c. Variables superglobales: son un tipo de variables especiales suministradas por PHP 
que contienen datos importantes para la codificación de aplicaciones.
Están estructuradas como arreglos asociativos. Las variables superglobales suministradas 
por PHP son: 
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
15SENA - Servicio Nacional de Aprendizaje.
2.2. Constantes
Las constantes son valores que no cambian a lo largo de un programa. En PHP 
se definén así:
Figura 6. Variables superglobales de PHP.
<?php 
	 define(	"<Nombre	de	la	constante>",	"<valor>"	);
?>
A continuación un ejemplo de constantes en PHP.
Al ejecutar el programa genera el siguiente resultado:
# php ejemplo7.php
Ejemplo de una constante
Servicio Nacional de Aprendizaje
USUARIO@DESKTOP-7971D4H d:\xampp
#
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
16SENA - Servicio Nacional de Aprendizaje.
2.3. Tipos de datos 
PHP al igual que todos los lenguajes de programación soporta varios tipos de datos 
unos simples o escalares y otros compuestos.
2.3.1. Tipos de datos escalares
Los tipos de datos escalares o simples son aquellos que contienen sólo una magnitud ya 
se una valor numérico, texto, flotante, etc.
Figura 7. Tipos de datos escalares.
Para concatenar variables tipo texto se usa el símbolo “.”. Ejemplo:
Al ejecutar el anterior código en la consola produce el siguiente resultado:
# php concatenacion.php
Buenos días Pedro Perez
USUARIO@DESKTOP-7971D4H d:\xampp\
htdocs
#
2.3.2. Tipos de datos compuestos
Para cada subsistema se diseña y documenta su interfaz con otros subsistemas.
<?php
 $nombre = "Pedro";
 $apellido = "Perez";
 echo “Buenos días" . $nombre . " " . $apellido ;
?>
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
17SENA - Servicio Nacional de Aprendizaje.
* : Los objetos se estudiarán en el recurso “Programación Orientada a Objetos con PHP”.
Una arreglo es PHP es realmente un emparejamiento o mapa ordenado. El emparejamiento 
está basado en valores y claves. Esta estructura puede usarse de múltiples formas 
(COWBURN,2017):
a. Como un arreglo.
b. Como una lista.
c. Como tabla hash.
d. Como un diccionario.
e. Como pilas y colas.
Para definir un arreglo en PHP se usa la siguiente sintaxis:
$arreglo = array(
 "llave1" => "Valor1",
 "llave2" => "Valor2",
);
$arreglo = [
 "Llave1" => "Valor1",
 "Llave2" => "Valor2",
 ];
);
A partir de la versión 5.4. se puede también así:
La clave puede ser un entero o un string. El valor puede ser de cualquier tipo. 
Cuando la llave es un string se puede llamar el arreglo un diccionario o un arreglo 
asociativo.
Ejemplo:
Figura 8. Tipos de datos estructurados.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
18SENA - Servicio Nacional de Aprendizaje.
<?php
 $arreglo = [ "Jacinto", "Jose", "Pepita", "Mendieta" ] ;
 echo "Buenos días". $arreglo[0] ." ". $arreglo[1] ." ". 
$arreglo[2] ." ".$arreglo[3] . "\n";
 var_dump($arreglo);
?>
En el caso anterior PHP asignará una llave entera que inicia en 0.
PHP suministra un conjunto de funciones que soportan la programación con arreglos 
entre algunas se tienen.
Función Uso Descripción 
count count($arreglo) Retorna un entero con el número de elementos del arreglo 
is_array i s_array($arreglo) Retorna verdadero si la variable es un arreglo 
in_array i n_array($elemento, 
$arreglo) 
Retorna 1 o TRUE si el elemento está en el arreglo. 
array_keys a rray_keys($arreglo) Retorna un arreglo con los nombres de las llaves o con los 
índices del arreglo. 
Función Uso Descripción 
count count($arreglo) Retorna un entero con el número de elementos del arreglo 
is_array i s_array($arreglo) Retorna verdadero si la variable es un arreglo 
in_array i n_array($elemento, 
$arreglo) 
Retorna 1 o TRUE si el elemento está en el arreglo. 
array_keys a rray_keys($arreglo) Retorna un arreglo con los nombres de las llaves o con los 
índices del arreglo. 
2.4. Operadores
Los operadores se utilizan para realizar operaciones entre objetos, datos, identificadores, 
constantes y devuelven un valor.
Los operadores en PHP se pueden dividir en las siguientes categorías:
<?php
 $arreglo = [
 "Nombre" => "Pedro",
 "Apellido" => "Perez",
 ];
 echo “Buenos días". $arreglo["Nombre"] . " " . 
$arreglo["Apellido"] ;
?>
Se pueden crear arreglos sin especificar la clave. Por ejemplo:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
19SENA - Servicio Nacional de Aprendizaje.
b. De asignación
El operador de asignación básico es el igual (=) y se utiliza para asignar un valor a otro. 
Mediante la utilización de estos operadoresse pueden realizar operaciones aritméticas, 
lógicas, de bit y de asignación con un único operador.
Supongamos que necesitamos sumar un número a una variable y almacenar el resultado 
en la misma variable, como a continuación, lo que en algoritmos conocimos como 
acumulador:
$acu = $acu + 2;
En PHP se puede abreviar esta sentencia con el operador de atajo +=, de la siguiente 
manera:
$acu += 2;
La siguiente tabla muestra los operadores de asignación y su expresión equivalente:
Figura 10. Operadores de asignación.
Figura 9. Operadores aritméticos.
a. Aritméticos
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
20SENA - Servicio Nacional de Aprendizaje.
Figura 12. Operadores lógicos.
d. Operadores lógicos
Su uso radica en la manera como se quiere que se evalúe la condición, si se hace 
necesario que se evalúe las dos partes se utiliza el AND simple (&) o el OR simple (|). El 
comportamiento del AND y el OR lo muestra la siguiente tabla:
Figura 11. Operadores de comparación.
c. Operadores de comparación
Un operador de comparación, como su nombre lo indica compara dos valores y determina 
la relación existente entre ellos. La respuesta que se obtiene es true o false.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
21SENA - Servicio Nacional de Aprendizaje.
2.5. Estructuras de Control
En PHP, las estructuras de control, funcionan similar a la de otros lenguajes de 
programación, entre las más comunes están:
a) Condicional simple (IF)
Realiza las instrucciones a partir de una decisión evaluada. La sintaxis es la siguiente:
<?php
if	(expr)
Sentencia;	//	en	caso	de	condición	verdadera
else
Sentencia;	//	en	caso	de	condición	falsa
?>
<?php
while	(expr)	//evalúa	la	condición
{
	 <instrucciones>	;	//instrucción	que	se	repite	mientras
	 	 	 //	condición	sea	verdadera
};
?>
Ejemplo:
<html>
<body>
<p>Ejemplo de una estructura condicional sencilla.<p><br>
<?php
echo "Codigo PHP de un condicional sencillo <br>" ;
$a = 8;
$b = 3;
if( $a < $b ){
echo "a es menor que b" ;
} else {
echo "a es mayor que b" ;
};
?>
</body>
</html>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
b) Ciclo mientras (WHILE)
En esta estructura el número de iteraciones del ciclo depende de la condición que se 
plantee al comienzo del proceso.
La sintaxis es la siguiente:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
22SENA - Servicio Nacional de Aprendizaje.
El ejemplo a continuación muestra en pantalla los números del 1 al 10.
Al ejecutar el ejemplo en la consola de PHP se obtiene lo siguiente:
# php ejemplo1.php
Codigo PHP para generar numeros del 1 al 10
el valor de i es 1
el valor de i es 2
el valor de i es 3
el valor de i es 4
el valor de i es 5
el valor de i es 6
el valor de i es 7
el valor de i es 8
el valor de i es 9
USUARIO@DESKTOP-7971D4H d:\xampp
#
c) Ciclo haga mientras (DO … WHILE)
Este bucle es similar al While, lo que los diferencia es que la condición se evalúa hasta el 
final de cada iteración y no al comienzo.
En esta estructura el número de iteraciones del ciclo depende de la condición que se 
plantee al final del proceso.
Sintaxis:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
23SENA - Servicio Nacional de Aprendizaje.
<?php
do
 {
	 	 <instruccion	1>	;
	 	 <instruccion	2>	;
	 	 <instruccion	n>	;
 }
while (<expresión	lógica>)	//	evalúa	condición	y	repite	ciclo	en
	 	 	 //caso	de	ser	verdadera
?>
Ejemplo:
Al ejecutar en una consola con PHP aparece lo siguiente:
# php ejemplo2.php
Codigo PHP para generar numeros del 1 al 5
el valor de i es 1
el valor de i es 2
el valor de i es 3
el valor de i es 4
el valor de i es 5
USUARIO@DESKTOP-7971D4H d:\xampp
#
d) Ciclo repita n veces (FOR)
En esta estructura el número de iteraciones se conoce antes de ejecutarse el ciclo. La 
sintaxis es:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
24SENA - Servicio Nacional de Aprendizaje.
<?php
 for (expresión 1; expresión 2; expresión 3)
 {
 <sentencia 1> ;
 <sentencia 2> ;
 <sentencia n> ;
 } ;
?>
Donde:
expresión 1: inicializa el contador.
expresión 2: determina el número de repeticiones.
expresión 3: establece el incremento en cada repetición.
Ejemplo:
Al ejecutar el programa aparece lo siguiente:
# php ejemplo3.php
Este es un ejemplo del uso del ciclo for en PHP
Linea 1
Linea 2
Linea 3
Linea 4
Linea 5
Linea 6
Linea 7
USUARIO@DESKTOP-7971D4H d:\xampp
#
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
25SENA - Servicio Nacional de Aprendizaje.
e) Decisión basada en múltiples opciones (SWITCH)
También es conocida como “case”, y se utiliza para evaluar el contenido de una variable 
y determinar diferentes acciones a ejecutar dependiendo de ese valor, que puede ser 
cualquier expresión que evalúe a un tipo simple. Su sintaxis es:
<?php
switch (variable_a_evaluar)
{
case <valor1>:
 <sentencias> ;
 break;
case <valor2>:
 <sentencias> ;
 break;
case <valorn:
 <sentencias> ;
 break;
default // si no corresponde con ninguno de los
// valores anteriores
 <sentencias> ;
}
?>
Ejemplo:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
26SENA - Servicio Nacional de Aprendizaje.
Al ejecutar el programa aparece lo siguiente:
f) Ciclo foreach 
Este ciclo proporciona una manera directa de trabajar con arreglos y objetos.
Su primera forma de uso es:
# php ejemplo4.php
Ejemplo del uso de comando switch en PHP
Solo me programaron entre uno y cuatro
USUARIO@DESKTOP-7971D4H d:\xampp
#
Donde:
Nombre del arreglo: nombre del arreglo que se va a recorrer. 
Variable_auxiliar: nombre de la variable auxiliar que tomará el valor de cada elemento del 
arreglo.
Ejemplo:
<?php
 foreach (<nombre_del_arreglo> as <variable_auxiliar>)
 {
 <sentencia 1> ;
 <sentencia 2> ;
 <sentencia n> ;
 } ;
?>
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
27SENA - Servicio Nacional de Aprendizaje.
<?php
 $arreglo = [ "Jacinto", "Jose", "Pepita", "Mendieta" ] ;
 $j = 0;
 foreach($arreglo as $elemento)
 {
 echo "$j: $elemento \n";
 ++$j ;
 }
?>
<?php
 foreach (<nombre_del_arreglo> as <llave> => <variable_ 
auxiliar>)
 {
 <sentencia 1> ;
 <sentencia 2> ;
 <sentencia n> ;
 } ;
?>
Al ejecutar el código se muestra lo siguiente en pantalla:
La segunda forma de uso es útil para recorrer arreglos asociativos o diccionarios:
Donde:
Nombre del arreglo: nombre del arreglo asociativo que se va a recorrer. 
Llave: nombre de la llave del arreglo asociativo.
Variable_auxiliar: nombre de la variable auxiliar que tomará el valor de cada elemento del 
arreglo.
# php foreach1.php
0: Jacinto
1: Jose
2: Pepita
3: Mendieta
USUARIO@DESKTOP-7971D4H d:\xampp
#
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
28SENA - Servicio Nacional de Aprendizaje.
<?php
 $arreglo = [
 "Primer_Nombre" => "Pedro",
 "Segundo_Nombre" => "Pablo",
 "Primer_Apellido" => "Perez",
 "Segundo_Apellido" => "Pereira"
 ];
 foreach($arreglo as $llave => $elemento)
 {
 echo "$llave: $elemento \n";
 };
?>
# php foreach2.php
Primer_Nombre: Pedro
Segundo_Nombre: Pablo
Primer_Apellido: Perez
Segundo_Apellido: Pereira
USUARIO@DESKTOP d:\xampp
#
Al ejecutar el código se muestra lo siguiente en pantalla:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
29SENA - Servicio Nacional de Aprendizaje.
# php ejemplo6.php
Ejemplo de un programa PHP con una funcion
Solo se de domingo a martes
USUARIO@DESKTOP-7971D4H d:\xampp
#
2.6. Funciones.
Las funciones son usadas en los lenguajes de programación para evitar la repetición de 
código y hacer los programas más entendibles.
Para crear una función en PHP se sigue la siguiente sintaxis:
<?php
 function(<parámetros>){// bloque de código
 return <variable>
 };
?>
A continuación un ejemplo de una función:
Al ejecutar el código se muestra lo siguiente en pantalla:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
30SENA - Servicio Nacional de Aprendizaje.
2.7. Inclusión de librerías o bibliotecas de código.
Las librerías o bibliotecas de código permiten que un programa pueda acceder a las 
funciones o bloques de código definidas en otros programas PHP. La sintaxis es la 
siguiente:
<?php 
	 include_once	″<nombre_biblioteca.php>″	;
?>
Una vez ejecutada la línea de código el programa puede hacer uso de las funciones 
provistas por esa biblioteca como si se hubieran definido en el programa actual.
También se puede usar la palabra reservada “include” en vez de “include_once”. La 
diferencia es que esta última revisa si la librería ya ha sido cargada y dado el caso no 
vuelve a cargarla evitando así errores.
“include”, por el contrario, trata de cargar nuevamente la librería generando errores ya 
que estaría duplicando el código.
2.8. Obtener información sobre el tipo de una variable
En muchas ocasiones se hace necesario capturar el tipo de una variable, para este 
proceso PHP cuenta con unas funciones predefinidas. Si al utilizar dichas funciones, la 
respuesta es verdadera, significa que la variable es del tipo que maneja la función, si la 
respuesta es falsa, es porque la variable es de otro tipo. 
Figura 13. Funciones para determinar el tipo de una variable.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
31SENA - Servicio Nacional de Aprendizaje.
2.9. Variables superglobales.
PHP suministra un tipo de variables que contienen información útil para el desarrollo de 
aplicaciones.
A continuación un tabla con las variables superglobales:
Figura 14.Variables superglobales de PHP.
3. Usos prácticos de php 
A diferencia de Javascript que se ejecuta del lado el cliente (client-side programming) 
PHP es un lenguaje que se ejecuta del lado del servidor (server-side programming) y 
permite la generación de páginas web dinámicas, es decir, páginas que se crean de 
acuerdo a la lógica del momento en que se llaman. 
Al estar del lado del servidor PHP se puede comunicar fácilmente con bases de datos y 
otros recursos que permiten que las aplicaciones PHP realicen las mismas tareas que 
pueden ejecutar las aplicaciones nativas o de escritorio.
A continuación algunas tareas importantes que se pueden realizar con PHP. 
3.1. Formularios web
En el recurso introductorio al diseño web de ADSI se introdujo al aprendiz del concepto de 
formularios web, sin embargo, estos formularios no tenían mayor funcionalidad ya que los 
datos capturados no podían ser enviados a un servidor para su procesamiento. Con PHP 
se pueden tomar esos datos y procesarlos ya sea a través de un programa convencional 
o interactuando con recursos del sistema como bases de datos, archivos del filesystem, 
entre otros.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
32SENA - Servicio Nacional de Aprendizaje.
3.1.1. Paso de variables a un programa PHP
Para el desarrollo de formularios con PHP se requiere primero entender 
cómo se pasan las variables desde el formulario web hacia el programa 
PHP que hace el procesamiento.
Existen dos maneras de pasar variables desde una página web a PHP: con el método 
GET y con el método POST.
a. Método GET usando una URL
Mediante este sistema las variables se pasan a un programa PHP usando la URL. Por 
ejemplo:
<a href=”holamundo.php?nombre=pedro&apellido=perez>	 Enlace	 a	
Pedro	Pérez	</a>
<form action=”<nombre_programa>.php”>
	 Enunciado	del	campo:
 <input	type=”text”	name=”campo1”>
 <input	type=”submit”	value=”Enviar”>
</form>
En el ejemplo se están pasando los parámetros “nombre” y “apellido” al programa 
“holamundo.php” a través de una URL usando el elemento HTML ancla (<a>). De la 
expresión se tiene que:
El símbolo “?” indica el inicio de los parámetros.
El símbolo “&” es el separador de parámetros.
El símbolo “=” indica el valor de la variable.
b) Método GET a través de un formulario
Una estructura básica de un formulario HTML procesado con un programa PHP es:
 Donde el atributo “action” indica el programa al cual se le enviarán las variables contenidas 
en los campos input. Si se omite el atributo “action” el formulario enviará las variables al 
mismo programa, es decir, en lugar de hacer un llamado a un programa externo como: “otro_
programa.php?parametro1=uno&parametro2=dos” el sistema pasará los parámetros 
al mismo programa así: “mismo_programa.php?parametro1=uno&parametro2=dos” y 
recargará la página.
Lo anterior se ilustra con el siguiente ejemplo:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
33SENA - Servicio Nacional de Aprendizaje.
<!--formulario.html -->
<html>
body>
<form action="programa1.php">
Nombre: <input type=text name="nombre"><br>
Apellido: <input type=text name="apellido"><br>
input type=submit value="Enviar">
</form>
/body>
</html>
1
2
3
4
5
6
7
8
9
10
Al solicitar al navegador la página: http://localhost/formulario.html.
Aparece lo siguiente:
Figura 15. Página web con un formulario.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
34SENA - Servicio Nacional de Aprendizaje.
Al llenar campos con datos de ejemplo se tiene lo siguiente:
Figura 16. Página web con un formulario diligenciado.
Figura 17. Página resultante de programa1.php usando método GET.
Al oprimir el botón de enviar se obtiene lo siguiente:
Se puede observar que las variables del formulario aparecen en la URL de la página. 
También se observa que en la página se dibujó el resultado del código PHP.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
35SENA - Servicio Nacional de Aprendizaje.
c. Formulario con método POST
El método por defecto usado por los formularios para el envío de las variables de un 
formulario es GET. Lo anterior quiere decir que si no se especifica el método el navegador 
usará el método GET.
En el método POST las variables no se anexan a la URL sino que se anexan al cuerpo 
de la solicitud del protocolo HTTP (“HTTP request”) y por tanto no son visibles en la barra 
de navegación.
En el ejemplo anterior si se usa el método POST el programa queda como sigue:
<!--formulario.html -->
<html>
body>
<form action="programa1.php"method=post>
Nombre: <input type=text name="nombre"><br>
Apellido: <input type=text name="apellido"><br>
input type=submit value="Enviar">
</form>
/body>
</html>
1
2
3
4
5
6
7
8
9
10
De los anteriores programas se tiene:
1. En la definición de la forma en el archivo html se especificó el atributo “method=post”.
2. En el programa PHP la variable que se consulta es $_POST.
Al abrir el formulario en el navegador y oprimir el botón enviar se obtiene lo siguiente:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
36SENA - Servicio Nacional de Aprendizaje.
Figura 18. Página resultante de programa1.php usando el método POST.
Se puede observar que en la barra de navegación no aparecen los parámetros.
Los parámetros pueden ser enviados por cualquiera de los dos métodos sin embargo se 
debe tener en cuenta lo siguiente:
• La longitud de una URL está limitada a 3000 caracteres incluyendo los parámetros. 
Por tanto si se requiere enviar información de una forma que sobrepase ese número 
se debe usar el método POST.
• Los datos enviados con el método GET son visibles en la barra de navegación. Por lo 
anterior si se está manejando información sensible o confidencial no es buena opción 
usar este método.
• Las URL usadas en el método POST no se pueden guardar como un “bookmark”.
3.2. Acceso a bases de datos desde PHP 
Una de los beneficios de usar PHP es que ya trae incorporado el código fuente para 
acceder ala mayoría de las bases de datos.
El flujo que se sigue para el procesamiento de páginas web con código PHP incorporado 
que acceden a bases de datos es como se muestra en la figura 19.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
37SENA - Servicio Nacional de Aprendizaje.
El proceso para interactuar con bases de datos usando PHP es así:
a. Conectarse a la base de datos.
b. Seleccionar la base de datos a usar.
c. Construir o armar la sentencia SQL.
d. Ejecutar la consulta.
e. Procesar los datos recibidos. 
f. Ejecutar los pasos c) al e) hasta que se requiera.
g. Desconectarse de la base de datos.
Para desarrollar los ejemplos de este recurso se ha creado una base de datos de prueba 
con el siguiente script:
3.2.1. mysqli o Mysql Improved
Figura 19. Esquema de operación de PHP con bases de datos.
create database adsi ;
create table ciudades ( codigo text, nombre text ) ;
insert into ciudades ( codigo, nombre ) values ( "05001", "MEDELLIN" );
insert into ciudades ( codigo, nombre ) values ( "05002", "ABEJORRAL" );
insert into ciudades ( codigo, nombre ) values ( "05004", "ABRIAQUI" );
insert into ciudades ( codigo, nombre ) values ( "05021", "ALEJANDRIA" );
Las librerías para acceder a bases de datos usando PHP son:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
38SENA - Servicio Nacional de Aprendizaje.
Es una librería propia para la base de datos MySQL que, al momento de escribir el 
recurso, está soportada y en ciclo de vida activo. Fue introducida con la versión 5 de PHP.
Entre sus características están:
a. Interfaz orientada a objetos.
b. Tiene un lenguaje procedural.
c. Permite conexiones persistentes.
d. Soporta procedimientos almacenados.
e. Soporte para transacciones.
El siguiente es la estructura para acceder a una base de datos MySQL usando la librería 
mysqli.
En el ejemplo se tiene lo siguiente:
1 $conn = new mysqli("<host>", "<usuario>", "<clave>", "<base_de_datos>" ) ;
2 if( $conn->connect_errno ) {
3 echo "Falla al conectarse a Mysql ( ". $conn->connect_errno . ") " . 
5 $conn->connect_error ;
6 } else {
7 echo $conn->host_info. "\n" ;
8 } ;
1. El parámetro “host” es el nombre o la IP del servidor MySQL.
2. El parámetro “usuario” es el usuario de MySQL.
3. El parámetro “clave” es la clave del usuario en MySQL.
4. El parámetro “base de datos” es el nombre de la base de datos en MySQL que se 
quiere acceder.
La librería mysqli tiene dos formas de operar: con programación procedural o con 
programación orientada a objetos. En este recurso se usará la orientada a objetos.
Una vez establecida la conexión se pueden realizar las siguientes operaciones:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
39SENA - Servicio Nacional de Aprendizaje.
1 <?php
2 $conn = new mysqli("localhost", "desarrollador", "adsi2017", "citas" ) ;
3 if( $conn->connect_errno) {
4 echo "Falla al conectarse a Mysql ( ". $conn->connect_errno . ") " . 
5 $conn->connect_error ;
6 } else {
7 echo $conn->host_info. "\n" ;
8 } ;
9 ?>
Si la conexión es exitosa aparece lo siguiente en una consola PHP:
Si la conexión no es exitosa aparece lo siguiente en pantalla:
USUARIO@DESKTOP-7971D4H d:\xampp
# php database1.php
localhost via TCP/IP
USUARIO@DESKTOP-7971D4H d:\xampp
#
USUARIO@DESKTOP-7971D4H d:\xampp
# php database1.php
Falla al conectarse a Mysql ( 1045) Access denied for user ‘desarrollador’@’localhost’ 
(using password: YES)
USUARIO@DESKTOP-7971D4H d:\xampp
#
a. Ejecutar sentencias SQL que no devuelven registros
Para ejecutar una sentencia SQL se usa el método “query”. La sintaxis es la siguiente: 
En el ejemplo anterior el resultado de la consulta queda almacenado en el objeto 
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
40SENA - Servicio Nacional de Aprendizaje.
if( $mysqli->query(“<sentencia sql>”) === TRUE ) {
 echo “Se ejecutó la sentencia con éxito”;
} else {
 echo “Hubo un error ...” ;
};
01<?php
02 $conn = new mysqli("localhost", "desarrollador", "adsi2017", "adsi" ) ;
03 if( $conn->connect_errno) {
04 echo "Falla al conectarse a Mysql ( ". $conn->connect_errno . ") " . 
05 $conn->connect_error ;
06 exit() ;
07 } ;
08
09 if($resultado = $conn->query("select codigo, nombre from ciudades ") ){
10 
11 while($registro = $resultado->fetch_assoc() ){
12 
13 echo $registro["codigo"] . " " . $registro["nombre"] . "\n" ;
14 
15 } ;
16 };
17 
18 $resultado->free(); 
19 $conn->close();
20?>
if( $resultado = $mysqli->query(“<sentencia sql>”) ) {
 echo “La consulta devolvió “. $resultado->num_rows . “ registros”;
} else {
 echo “Hubo un error ...” ;
};
b. Ejecutar sentencias SQL que devuelven registros
“$resultado .
c. Recorrer los registros devueltos en una consulta con el método fetch_assoc
Para recorrer los registros se pueden usar varios métodos. Uno de ellos es “fetch_assoc” 
que retorna cada registro como un arreglo asociativo. A continuación un ejemplo:
Del código anterior se tiene:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
41SENA - Servicio Nacional de Aprendizaje.
a. De las líneas 2 al 7 se realiza la conexión a la base de datos.
b. La línea 6 indica que si no se pudo conectar a la base de datos termine abruptamente 
el programa.
c. La línea 9 pregunta si el query arrojó resultados. Si está vacío no se entra al ciclo 
while.
d. En las líneas 11 al 15 se ejecuta el ciclo while si el resultado devolvió uno o más 
registros.
e. En la línea 11 se utiliza la variable “$registro” que se convertirá en un arreglo asociativo 
una vez se ejecute el método “fetch_assoc”.
f. En la línea 13 se extraen los campos del arreglo asociativo y se muestran en el 
dispositivo de salida.
g. En la línea 18 se libera la memoria utilizada por el objeto “$resultado”.
h. En la línea 19 se cierra la conexión.
Al ejecutar el código anterior en la consola de PHP se obtiene lo siguiente:
# php database3.php
05001 MEDELLIN
05002 ABEJORRAL
05004 ABRIAQUI
05021 ALEJANDRIA
USUARIO@DESKTOP-7971D4H d:\xampp\htdocs
El mismo código se puede ejecutar dentro de una página web, solo se debe incrustar 
dentro de la sección <body> así:
<html>
 <body> 
 <programa php> 
 </body>
</html>
Para este ejemplo también se debe cambiar el salto de línea “\n” por el elmento HTML 
“<br>” o break para que tenga el mismo efecto. 
Luego se debe copiar el archivo en el directorio “htdocs” del directorio raíz de “xampp”. Al 
abrir la página con un navegador se obtiene lo siguiente:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
42SENA - Servicio Nacional de Aprendizaje.
Figura 20. Resultado del programa database3.php.
d. Recorrer los registros devueltos en una consulta con el método fetch_object
En este ejemplo se usó el método “fetch_assoc” el cual retorna un arreglo asociativo. 
PHP también provee el método “fetch_object” el cual retorna los registros como un objeto. 
Si se hiciera el ejemplo anterior con este método el ciclo while que recorre los registros 
queda así:
09 if($resultado = $conn->query("select codigo, nombre from ciudades ") ){
10 
11 while($registro = $resultado->fetch_object() ){
12 
13 echo $registro->codigo . " " . $registro->nombre . "\n" ;
14 
15 } ;
16 };
$resultado->close();
$mysqli->close() ;
Se puede observar que la variable “$registro” ya no es un arreglo asociativo sino un 
objeto y los campos se convierten en atributos del mismo.
e. Cerrar la consulta
Una vez se hayan procesado los registros y no se requieran más los resultados se debe 
cerrar el objeto con el método “close” así:
f. Cerrar la conexión 
Cuando no se necesite más la conexión ésta se debe cerrar con el método “close” así:
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
43SENA - Servicio Nacional de Aprendizaje.
3.2.2.Librería mysql
Esta librería está descontinuada y no se debería usar para proyecto nuevos. Se deben 
usar las demás librerías mencionadas en este recurso.
3.2.3. Librería PDO
Además de mysqli PHP también suministra la librería PDO o PHP Data Objects que es 
orientada a objetos y además de MySQL también permite el acceso a otras bases de 
datos como Postgresql , Oracle, Informix, Firebase, entre otras.
Este recurso hace uso de la librería mysqli y la información acerca de la librería PDO es 
sólo de interés general.
3.3. Manejo de sesiones
En el desarrollo de software muchas veces el programador requiere manejar datos a lo 
largo de toda una aplicación. Aunque utilizar una base de datos es una solución posible 
no siempre es práctico o no siempre se dispone de una base de datos.
En el caso de PHP el código se ejecuta en el servidor el cual puede estar atendiendo 
muchos usuarios al mismo tiempo. Por otra parte el protocolo HTTP sobre el cual se 
apoya PHP es “stateless” , es decir, no conoce quién está haciendo las peticiones, sólo 
las atiende y luego se “olvida”.
Una primera solución a este problema fueron las “cookies” que son unos pequeños 
archivos que se almacenan en el computador del cliente y almacenan datos propios de 
ese usuario. 
Las “cookies” al ser archivos que se almacenan en el computador cliente y el servidor no 
tiene control sobre ellas. Por lo anterior pueden ser borradas o alteradas.
Para resolver la anterior problemática PHP suministra una variable superglobal llamada 
$_SESSION el cual es un arreglo asociativo que mantiene mientras se ejecuta una 
aplicación.
Los pasos para apoyar la programación con base en esta variable superglobal es la 
siguiente:
a. Iniciar o reiniciar sesión
Para iniciar una sesión se utiliza la instrucción “session_start()” en cada programa PHP.
Este instrucción indica a PHP que haga disponible la variable $_SESSION en el programa 
actual.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
44SENA - Servicio Nacional de Aprendizaje.
b. Crear, consultar o modificar elementos del arreglo asociativo $_SESSION
Para crear un elemento solo se le debe asignar un valor de la misma manera que se hacen 
con todas las variables en PHP. Por ejemplo: $_SESSION[“usuario”] = “desarrollador”.
 
Si el elemento “usuario” de la variable $_SESSION ya estaba creada entonces su valor 
se modificará al último ingresado.
El arreglo $_SESSION se puede consultar como cualquier otro arreglo asociativo 
simplemente accediendo al elemento a través de su nombre. Ejemplo: echo $_
SESSION[“usuario”].
c. Terminación de la sesión
Una vez se termine la sesión se debe proceder a vaciar la variable $_SESSION con la 
instrucción: session_unset() seguido por session_destroy(). Lo anterior libera los recursos 
de memoria que el servidor empleaba para almacenar esos datos.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
45SENA - Servicio Nacional de Aprendizaje.
Glosario
Apache: servidor web de amplio uso para alojar páginas web.
Bookmark: enlace a Internet o URL que se guarda en texto plano para usarlo 
posteriormente.
Cookie: archivo pequeño que contiene información del cliente.
CSS: acrónimo de Cascade-Style Sheet. Hojas de estilos en cascada.
CUI: acrónimo de Caracters User Interface. Interfaz de usuario de caracteres.
GUI: acrónimo de Graphics User Interface. Interfaz gráfica de usuario.
IIS: acrónimo de Internet Information Services. Servidor web desarrollado por Microsoft.
HTML: acrónimo de HyperText Markup Languaje. Lenguaje de marcación de hipertextos.
HTTP: acrónimo de HyperText Transfer Protocol. Protocolo para el envío y recepción de 
páginas web.
Javascript: lenguaje de programación interpretado, que se ejecuta del lado del cliente 
(navegador web).
Librería: conjunto de archivos con programas que proveen servicios a las aplicaciones.
Nginx: servidor web de amplio uso para alojar páginas de web.
PDO: acrónimo de PHP Data Objects. Tecnología de PHP para conectarse a bases de 
datos.
PHP: acrónimo de Hypertext Preprocesor. Lenguaje de programación para internet.
Unario: operador aritmético o lógico que opera solamente sobre un argumento u operando.
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
46SENA - Servicio Nacional de Aprendizaje.
Cowburn P, (Ed) 2017. PHP Manual. Recuperado de http://php.net/manual/en/
Nixon, R. 2015. Learning PHP, MySQL & Javascript Fourth Edition. O’reilly. 
Cambridge.
Bibliografía
Fundamentos de programación con PHP
FAVA - Formación en Ambientes Virtuales de Aprendizaje
47SENA - Servicio Nacional de Aprendizaje.
Control del documento
 
 
Registered trademark
Copyright (c) 2017, XAMPP.
 
 EasyPHP 2000 - 2017.
 
 MySQL - licencia dual GNP/Licencia Comercial © ORACLE Corporation. 2017. Todos los derechos reservados.
FUNDAMENTOS DE PROGRAMACIÓN EN PHP
 
Centro Industrial de Mantenimiento Integral - CIMI
Regional Santander
Catalina Martínez Ávila
Rita Rubiela Rincón Badillo
Magda Milena García G. (V1)
Nelson Mauricio Silva M. (V2)
Rosa Elvia Quintero Guasca
Claudia Milena Hernández Naranjo
Santiago Lozada Garcés
Francisco José Lizcano Reyes
Víctor Hugo Tabares Carreño
Líder línea de producción:
Asesores pedagógicos:
Diseño multimedia:
Líder expertos temáticos:
Experto temático:
Programador:
Producción de audio:
 
 
 
 
Este material puede ser distribuido, copiado y exhibido por terceros si se 
muestra en los créditos. No se puede obtener ningún beneficio comercial 
y las obras derivadas tienen que estar bajo los mismos términos de la 
licencia que el trabajo original.
	Introducción
	Mapa de contenido
	1. Generalidades del lenguaje
	1.1. Historia de PHP
	1.2. Programación en PHP 
	1.2.1. Entorno de desarrollo XAMPP
	1.2.2. Entorno de desarrollo EasyPHP
	1.3. Características del Lenguaje
	1.3.1. Comentarios
	1.3.2. Instrucciones
	1.4. Modo de consola
	1.5. Modo embebido o incrustado en páginas web
	2. ELEMENTOS DEL LENGUAJE PHP
	2.1. Variables
	2.2. Constantes
	2.3. Tipos de datos 
	2.3.1. Tipos de datos escalares
	2.3.2. Tipos de datos compuestos
	2.4. Operadores
	2.5. Estructuras de Control
	2.6. Funciones.
	2.7. Inclusión de librerías o bibliotecas de código.
	2.8. Obtener información sobre el tipo de una variable
	2.9. Variables super-globales.
	3. Usos prácticos de php 
	3.1. Formularios web
	3.1.1. Paso de variables a un programa PHP
	3.2. Acceso a bases de datos desde PHP 
	3.2.1 mysqli o Mysql Improved
	3.2.2. Librería mysql
	3.2.3. Librería PDO
	3.3. Manejo de sesiones
	Glosario
	Bibliografía
	Control del documento

Continuar navegando

Materiales relacionados

77 pag.
GD4 - PHP

SIN SIGLA

User badge image

Yolibett Mendoza

142 pag.
192 pag.
Manual de PHP y MySQL

User badge image

Alejandra Leon

180 pag.
Manual_PHP5_Basico

SIN SIGLA

User badge image

Alex Bustamante