Anda di halaman 1dari 50

Lenguaje de programacin PHP

1. Introduccin al lenguaje
Etiquetas de PHP y sentencias.
Tipos de datos, variables y constantes.
Expresiones y operaciones.
Estructuras de control y bloques.
Funciones definidas por el usuario.
Temario de Introduccin al lenguaje
1. Introduccin al lenguaje
Las etiquetas delimitan los programas escritos en PHP.
Existen diversas formas de indicarlas:
Etiquetas de PHP y sentencias
Nombre Abre Cierra
Etiquetas estndar
<?php ?>
Etiquetas cortas
<? ?>
Etiquetas cortas
<?= ?>
Tipo Script
<script language=php> </script>
Tipo ASP
<% %>
En PHP las sentencias deben terminar con punto y coma (;)
1. Introduccin al lenguaje
Tipos de datos
Tipos de datos, variables y constantes
boolean Un valor que puede ser verdadero (true) o falso (false)
int Un valor numrico entero con signo
float Un valor numrico de punto flotante con signo
string Una coleccin binaria de datos que puede ser un texto
null
Representa a la ausencia de valor para una
variable
resoruce
Recursos no representados de forma nativa por
PHP, por ejemplo conexiones a bases de datos y
manejadores de archivo.
Tipos especiales
1. Introduccin al lenguaje
Tipos compuestos
Tipos de datos, variables y constantes
array
Matriz o vector que puede contener diversos valores a
la vez.
object Estructura con atributos y mtodos.
1. Introduccin al lenguaje
El tipo lo determina el valor que guarda. El tipo es dinmico
Las variables se nombran de acuerdo a las siguientes reglas:
Siempre empieza con el smbolo $ ($precio, $color, $forma)
El segundo smbolo puede ser: _, a-z, A-Z
El tercer smbolo puede ser cualquier alfanumrico.
Omitir los smbolos: %, &, :, ;. -,=,/,*,@ y todos aquellos con un
significado especial.
Los nombres de variables son sensibles a maysculas/minsculas
Tipos de datos, variables y constantes
1. Introduccin al lenguaje
Se declaran con la instruccin define
El nombre de la constante va entre comillas.
Se recomienda asignar nombres en MAYSCULAS
Se recomienda separar dos palabras del nombre con _
Las constantes no emplean el smbolo $
Tipos de datos, variables y constantes
1. Introduccin al lenguaje
Expresiones y operadores
Operador Ejemplo Nombre Resultado
- -$x Negacin El opuesto de $x
+ $x + $y Adicin Suma de $x y $y
- $x - $y Substraccin Diferencia entre $x y $y
* $x * $y Multiplicacin Producto de $x por $y
/ $x / $y Divisin Cociente de $x y $y
% $a % $y Mdulo o
residuo
Residuo del cociente de $x y $y
Operadores aritmticos
1. Introduccin al lenguaje
Expresiones y operadores
Operadores de asignacin
Operador Ejemplo Resultado
= $a = $b
Asigna a $a el valor que guarda $b
+= $a += $b
Equivale a $a = $a + $b
-= $a -= $b
Equivale a $a = $a - $b
*= $a *= $b
Equivale a $a = $a * $b
/= $a /= $b
Equivale a $a = $a / $b
%= $a %= $b
Equivale a $a = $a % $b
.= $a .= $b
Equivale a $a = $a . $b
&= $a &= $b
Equivale a $a = $a & $b
|= $a |= $b
Equivale a $a = $a | $b
^= $a ^= $b
Equivale a $a = $a ^ $b
<<= $a <<= $b
Equivale a $a = $a << $b
>>= $a >>= $b
Equivale a $a = $a >> $b
1. Introduccin al lenguaje
Expresiones y operadores
Operadores de lgicos
Operador Ejemplo Nombre
and && $a and $b $a && $b
Y
or || $a or $b $a || $b
O
! ! $a
NO
xor $a xor $b
OR EXCLUSIVO
1. Introduccin al lenguaje
Expresiones y operadores
Operadores de comparacin
Operador Ejemplo Nombre
> $a > $b Mayor que
< $a < $b Menor que
>= $a >= $b Mayor o igual que
<= $a <= $b Menor o igual que
<> != $a<>$b $a != $b Diferente de
== $a==$b Igual a
=== $a===$b Idntico a
1. Introduccin al lenguaje
Expresiones y operadores
Operadores de a nivel bit
Operador Ejemplo Nombre
& $a & $b AND Los bits activos tanto en $a y
$b permanecen activos.
| $a | $b OR Los bits activos, en $a o $b,
permanecen activos.
~ ~ $a No Los bits que estn activos en $a
son desactivados y viceversa.
^ $a ^ $b XOR Los bits activos en $a o en $b,
pero no en ambos, quedan
activos.
<< $a << $b Corrimiento a la
izquierda
Desplaza los bits de $a, $b
pasos a la izquierda (cada paso
quiere decir multiplica por
dos)
>> $a >> $b Corrimiento a la
derecha
Desplaza los bits de $a, $b
pasos a la derecha (cada paso
quiere decir divide por 2)
1. Introduccin al lenguaje
Expresiones y operadores
Operadores de a nivel bit
Cmo se calcula un desplazamiento?

Un desplazamiento a la izquierda.

4<<3 se calcula como (4 * 2
3
)=32

Un desplazamiento a la derecha

12>>2 se calcula como (12 / 2
2
)=3

1. Introduccin al lenguaje
Expresiones y operadores
Operadores de auto incremento y auto decremento
Operador Nombre Efecto
++$a Pre-incremento Incrementa $a en 1 y luego lo
devuelve
$a++ Post-incremento Devuelve $a y luego lo incrementa en
1
--$a Pre-decremento Decremento $a en 1, luego devuelve
$a
$a-- Post-decremento Devuelve $a, luego decremento $a en
1
1. Introduccin al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
if (condicin) {
Instrucciones;
}
if( condicin ){
Instrucciones;
} else {
Instrucciones;
}
if( condicin1 ){
Instrucciones 1;
} else if(condicin2){
Instrucciones2
} else if(condicin3){
Instrucciones3;
} else {
Instrucciones4;
}
1. Introduccin al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
if (condicin):
Instrucciones
endif;
if (condicin):
Instrucciones1
else:
Instrucciones2;
endif;
if (condicin1):
Instrucciones1;
elseif(condicin2):
Instrucciones2;
endif;
1. Introduccin al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
switch(valor){
case expresin1:
Instruccines1;
break;

case expresin2:
Instruccines2;
break;

case expresin3:
Instruccines3;
break;

default:
Instruccines4;
}
1. Introduccin al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
switch(valor):
case expresin1:
Instruccines1;
break;

case expresin2:
Instruccines2;
break;

case expresin3:
Instruccines3;
break;

default:
Instruccines4;
endswitch:
1. Introduccin al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
variable = (condicin) ? valor1 : valor2;
$x = (11 > 10) ? 4 : 3;
1. Introduccin al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
for(expresin1; expresin2; expresin3){
Instrucciones;
}
foreach(coleccin as elemento){
Instrucciones;
}
for(expresin1; expresin2; expresin3):
Instrucciones;
endfor:
1. Introduccin al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
while(condicin){
Instrucciones;
}
do{
Instrucciones;
}while(condicin);
1. Introduccin al lenguaje
Funciones definidas por el usuario
Para crearlas se usa la palabra reservada function.
Deben tener un identificador (nombre) alusivo al problema que resuelve.
Puede recibir una lista de parmetros indicada entre parntesis.
Puede devolver un valor por medio de la instruccin return.
<?php
//declaracin de la funcin
function saludo() {
echo Hola, Mundo;
}

//invocacin a la funcin.
saludo();
?>
1. Introduccin al lenguaje
Funciones definidas por el usuario
Por lo regular devuelven por valor y no por referencia.
Se puede forzar a que devuelvan por referencia con &.
La regla es que siempre deben devolver una variable, nunca un valor,
expresin o return vacio.
<?php
/* declaracin de la funcin. Para forzar la devolucin de una
referencia se utiliza el smbolo & en la primera posicin del nombre
de la funcin */

function &query($sql){
$resultado = mysql_query($sql);
return $resultado; //aqu devuelve una variable
}
//invocacin de la funcin
$rs = query();
?>
2. Herramientas elementales.
Temario de Herramientas elementales
Funciones para el manejo de cadenas.
Vectores declaracin, uso y funciones.
Inclusin de archivos.
PHP y el sistema de archivos.
2. Herramientas elementales.
Funciones para el manejo de cadenas
addslashes ucfirst, lcfirst
htmlentities ucwords
trim sprintf
str_replace y str_ireplace number_format
strlen Implode y explode
strpos y stripos chr y ord
substr
2. Herramientas elementales.
Vectores, declaracin y uso.
<?php
$arreglo1 = array();
$arreglo2 = array(1,2,3,4,5,6,8,9);
$arreglo3 = array(llave1=>valor1, llave2=>valor2);
?>
<?php
echo $arreglo[0] + $arreglo[2] + $arreglo[6];
echo $arreglo3[llave2];
?>
2. Herramientas elementales.
Funciones para el manejo de vectores
array_push, array_pop y array_shift range
array_reverse array_unique
array_search array_sum y array_product
in_array array_rand
count array_product
array_walk array_intersect y array_diff
shuffle array_key_exists
2. Herramientas elementales.
Inclusin de archivos
include e include_once
require y require_once
include(ruta_de_archivo);
include(pie.php);
2. Herramientas elementales.
PHP y el sistema de archivos
Abrir archivos.
$resource = fopen(ruta_archivo, modo);
$archivo = fopen(datos.txt, r);
Cuando no puede abrir el archivo devolver false
2. Herramientas elementales.
PHP y el sistema de archivos
Cerrar archivos.
boolean fclose($resource);
fclose($archivo);
Cuando no puede cerrar el archivo devolver false
2. Herramientas elementales.
PHP y el sistema de archivos
Modos de apertura
r Abrir slo para lectura.
r+ Abrir para lectura y escritura.
w Abrir slo para escritura y truncar el archivo en longitud cero. Si el archivo
no existe, intente crearlo.
w+ Abrir para lectura y escritura y truncar el archivo a longitud cero. Si el
archivo no existe, intenta crearlo.
a Abrir slo para agregar. Si el archivo no existe intenta crearlo.
a+ Abrir para lectura y escritura, comenzando al final del archivo. Si el
archivo no existe intenta crearlo.
x Crear y abrir slo para escritura. Si el archivo ya existe, fopen devolver
falso.
x+ Crear y abrir para lectura y escritura. Si el archivo ya existe, fopen
devolver falso.
2. Herramientas elementales.
PHP y el sistema de archivos
Lectura de archivos
Instruccin Descripcin Devuelve
fgets
Lee una cadena de texto de un
archivo.
Cadena de
caracteres.
fgetc
Lee un carcter de un archivo. Smbolo.
file_get_contents
Lee el contenido completo de
un archivo.
Cadena de
caracteres.
file
Abre un archivo y deposita su
contenido completo en un
vector
Un vector
fread
Lee un determinado nmero
de bytes
Bytes ledos
2. Herramientas elementales.
PHP y el sistema de archivos
Lectura de archivos
Instruccin Descripcin Devuelve
fgets
Lee una cadena de texto de un
archivo.
Cadena de
caracteres.
fgetc
Lee un carcter de un archivo. Smbolo.
file_get_contents
Lee el contenido completo de
un archivo.
Cadena de
caracteres.
file
Abre un archivo y deposita su
contenido completo en un
vector
Un vector
fread
Lee un determinado nmero
de bytes
Bytes ledos
2. Herramientas elementales.
PHP y el sistema de archivos
Lectura de archivos Ejemplo 1
<?php
$manejador = fopen("datos.txt", "r") or die();
while( ! feof($manejador) ){
$linea = fgets($manejador);
echo $linea;
}
fclose($manejador);
?>
2. Herramientas elementales.
PHP y el sistema de archivos
Lectura de archivos Ejemplo 2
<?php
$manejador = fopen("datos.txt", "r") or die();
while( $simbolo = fgetc($manejador) ){
echo $simbolo;
}
fclose($manejador);
?>
2. Herramientas elementales.
PHP y el sistema de archivos
Escribir a un archivo.
Funcin Descripcin
fwrite Escribe datos a un archivo. Recibe
como parmetro un manejador de
archivo.
Escribe una cadena a un archivo.
fputs
file_put_contents Escribe una cadena a un archivo.
2. Herramientas elementales.
PHP y el sistema de archivos
Escribir a un archivo Ejemplo 1
<?php
$manejador = fopen("datos.txt", "a");
fwrite($manejador, "\nEsto es una prueba");
fclose($manejador);
?>
2. Herramientas elementales.
PHP y el sistema de archivos
Escribir a un archivo Ejemplo 2
<?php
$cadena = "Esto es otra prueba de escritura\n";
file_put_contents("datos.txt", $cadena);
?>
En este ejemplo el contenido del archivo es reemplazado
2. Herramientas elementales.
PHP y el sistema de archivos
Escribir a un archivo Ejemplo 2
En este ejemplo el contenido no es reemplzado gracias
a FILE_APPEND.
<?php
$cadena = "Esto es otra prueba de escritura\n";
file_put_contents("datos.txt", $cadena, FILE_APPEND);
?>
3. Diseo de aplicaciones Web
Temario de Diseo de aplicaciones Web
Formularios HTML
Mtodos de envo GET y POST
Funciones para asegurar la entrada del usuario (htmlentities,
addslashes)
3. Diseo de aplicaciones Web
Formularios
Un formulario HTML es una interfaz que permite al usuario de
nuestra aplicacin Web ingresar o modificar datos para luego
enviarlos al servidor
Como todos los dems elementos de una pgina en HTML los
formularios deben especificarse usando las etiquetas
correspondientes. Para empezar un formulario debe encerrarse
entre las etiquetas <form> y </form>. Dentro de la etiqueta se
agregan varios parmetros, a continuacin se enlistan algunos
necesarios:
3. Diseo de aplicaciones Web
Formularios
Formularios HTML
Mtodos de envo GET y POST
Funciones para asegurar la entrada del usuario (htmlentities,
addslashes)
3. Diseo de aplicaciones Web
Temario de Diseo de aplicaciones Web
Formularios HTML
Mtodos de envo GET y POST
Funciones para asegurar la entrada del usuario (htmlentities,
addslashes)
3. Diseo de aplicaciones Web
Creacin de un formulario
3. Diseo de aplicaciones Web
Elementos de formulario
3. Diseo de aplicaciones Web
Cookies
Son valores que se almacenan en el cliente.
Las cookies se establecen con la funcin setCookie.
Las llamadas a setCookie deben realizarse antes de que cualquier
salida (HTML) sea enviada al navegador.
Las cookies se guardan en el arreglo asociativo (variable global)
$_COOKIE.
3. Diseo de aplicaciones Web
Cookies
<?php
setCookie("mi_cookie", "Este es el valor de la cookie");
?>
<?php
setCookie("mi_cookie", "Este es el valor de la cookie", time()+60*60*24*30);
?>
<?php
echo El valor de la cookie es: . $_COOKIE[mi_cookie];
?>
<?php
setCookie(mi_cookie, , time() - 3600);
?>
3. Diseo de aplicaciones Web
Sesiones
Son valores que se almacenan en el servidor.
Se almacenan en el arreglo asociativo $_SESSION.

3. Diseo de aplicaciones Web
Mysqli
mysqli es una extensin de PHP que permite acceder a ciertas
funciones disponibles a partir de MySQL 4.1 que no se pueden
emplear con la extensin tradicional
Proporciona:
Mayor velocidad y seguridad
Interfaz procedimental u orientado a objetos
Soporte de transacciones
Nuevo protocolo binario de MySQL 4.1 que permite ciertas
funciones como la ejecucin de sentencias preparadas

3. Diseo de aplicaciones Web
Mysqli Interfaz procedimental
Principales funciones:
mysqli connect(servidor, usuario, contrasea, baseDatos):
devuelve un identificador de recurso o false si la conexin falla
mysqli_connect_error(): devuelve una descripcin del ltimo error
de conexin
mysqli_query(identificador, sentencia): ejecuta una sentencia
SQL
mysqli_error(identificador): devuelve una descripcin del ltimo
error
mysqli_fetch_assoc(resultado): devuelve la siguiente fila en el
resultado o false en caso contrario
mysqli_free_result(resultado): libera la memoria empleada por un
resultado
mysqli_close(identificador): cierra la conexin con una base de
datos

Anda mungkin juga menyukai