Lenguaje de programación PHP

Download Report

Transcript Lenguaje de programación PHP

Lenguaje de programación PHP
Preparación del ambiente de desarrollo
Programando PHP desde Dreamweaver.
1. Crear el directorio de trabajo en el servidor
Se crea un directorio visible para el servidor Web
2. Configuración de un sitio en Dreamweaver
Se configura Dreamweaver para conectarlo al sitio.
1. Local Info
Ubicación de nuestros archivos locales.
2. Remote Info
Directorio remoto, cuenta de usuario. Subir al guardar
3. Testing Server
Server model PHP MySQL
3. Ventana Files.
Visualizar local y remotamente.
2. Introducción al lenguaje
Temario de Introducción 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.
2. Introducción al lenguaje
Etiquetas de PHP y sentencias
•
Las etiquetas delimitan los programas escritos en PHP.
•
Existen diversas formas de indicarlas:
Nombre
•
Abre
Cierra
Etiquetas estándar
<?php
?>
Etiquetas cortas
<?
?>
Etiquetas cortas
<?=
?>
Tipo Script
<script language=”php”>
Tipo ASP
<%
</script>
%>
En PHP las sentencias deben terminar con punto y coma (;)
2. Introducción al lenguaje
Tipos de datos, variables y constantes
•
Tipos de datos
boolean
Un valor que puede ser verdadero (true) o falso (false)
int
Un valor numérico entero con signo
float
Un valor numérico de punto flotante con signo
string
Una colección binaria de datos que puede ser un texto
•
Tipos especiales
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.
2. Introducción al lenguaje
Tipos de datos, variables y constantes
•
Tipos compuestos
array
Matriz o vector que puede contener diversos valores a
la vez.
object
Estructura con atributos y métodos.
2. Introducción al lenguaje
Tipos de datos, variables y constantes
•
El tipo lo determina el valor que guarda. El tipo es dinámico
•
Las variables se nombran de acuerdo a las siguientes reglas:
•
Siempre empieza con el símbolo $ ($precio, $color, $forma)
•
El segundo símbolo puede ser: _, a-z, A-Z
•
El tercer símbolo puede ser cualquier alfanumérico.
•
Omitir los símbolos: %, &, :, ;. -,=,/,*,@ y todos aquellos con un
significado especial.
•
Los nombres de variables son sensibles a mayúsculas/minúsculas
2. Introducción al lenguaje
Tipos de datos, variables y constantes
•
Se declaran con la instrucción define
•
El nombre de la constante va entre comillas.
•
Se recomienda asignar nombres en MAYÚSCULAS
•
Se recomienda separar dos palabras del nombre con _
•
Las constantes no emplean el símbolo $
2. Introducción al lenguaje
Expresiones y operadores
Operadores aritméticos
Operador
Ejemplo
Nombre
Resultado
-
-$x
Negación
El opuesto de $x
+
$x + $y
Adición
Suma de $x y $y
-
$x - $y
Substracción
Diferencia entre $x y $y
*
$x * $y
Multiplicación
Producto de $x por $y
/
$x / $y
División
Cociente de $x y $y
%
$a % $y
Módulo o
residuo
Residuo del cociente de $x y $y
2. Introducción al lenguaje
Expresiones y operadores
Operadores de asignación
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
2. Introducción al lenguaje
Expresiones y operadores
Operadores de lógicos
Operador
Ejemplo
Nombre
and
&&
$a and $b
$a && $b
Y
or
||
$a or $b
$a || $b
O
!
! $a
xor
$a xor $b
NO
OR EXCLUSIVO
2. Introducción al lenguaje
Expresiones y operadores
Operadores de comparación
Operador
Ejemplo
>
$a > $b
Mayor que
<
$a < $b
Menor que
>=
$a >= $b
Mayor o igual que
<=
$a <= $b
Menor o igual que
<>
!=
$a<>$b
$a != $b
==
$a==$b
===
$a===$b
Nombre
Diferente de
Igual a
Idéntico a
2. Introducción 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 estén 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”)
2. Introducción al lenguaje
Expresiones y operadores
Operadores de a nivel bit
¿Cómo se calcula un desplazamiento?
Un desplazamiento a la izquierda.
4<<3 se calcula como (4 * 23)=32
Un desplazamiento a la derecha
12>>2 se calcula como (12 / 22)=3
2. Introducción al lenguaje
Expresiones y operadores
Operadores de incremento y 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
2. Introducción al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
if (condición) {
Instrucciones;
}
if( condición ){
Instrucciones;
} else {
Instrucciones;
}
if( condición1 ){
Instrucciones 1;
} else if(condición2){
Instrucciones2
} else if(condición3){
Instrucciones3;
} else {
Instrucciones4;
}
2. Introducción al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
if (condición):
Instrucciones
endif;
if (condición):
Instrucciones1
else:
Instrucciones2;
endif;
if (condición1):
Instrucciones1;
elseif(condición2):
Instrucciones2;
endif;
2. Introducción al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
switch(valor){
case expresión1:
Instrucciónes1;
break;
case expresión2:
Instrucciónes2;
break;
case expresión3:
Instrucciónes3;
break;
default:
Instrucciónes4;
}
2. Introducción al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
switch(valor):
case expresión1:
Instrucciónes1;
break;
case expresión2:
Instrucciónes2;
break;
case expresión3:
Instrucciónes3;
break;
default:
Instrucciónes4;
endswitch:
2. Introducción al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
variable = (condición) ? valor1 : valor2;
$x = (11 > 10) ? 4 : 3;
2. Introducción al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
for(expresión1; expresión2; expresión3){
Instrucciones;
}
foreach(colección as elemento){
Instrucciones;
}
for(expresión1; expresión2; expresión3):
Instrucciones;
endfor:
2. Introducción al lenguaje
Estructuras de control selectivas, iterativas y el ternario.
while(condición){
Instrucciones;
}
do{
Instrucciones;
}while(condición);
2. Introducción 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 parámetros indicada entre paréntesis.
•Puede devolver un valor por medio de la instrucción return.
<?php
//declaración de la función
function saludo() {
echo “Hola, Mundo”;
}
//invocación a la función.
saludo();
?>
2. Introducción 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,
expresión o return vacio.
<?php
/* declaración de la función. Para forzar la devolución de una
referencia se utiliza el símbolo & en la primera posición del nombre
de la función */
function &query($sql){
$resultado = mysql_query($sql);
return $resultado; //aquí devuelve una variable
}
//invocación de la función
$rs = query();
?>
2. Introducción al lenguaje
Ejercicio
Errores.
3. Herramientas elementales.
Temario de Herramientas elementales
•
Funciones para el manejo de cadenas.
•
Vectores declaración, uso y funciones.
•
Inclusión de archivos.
•
PHP y el sistema de archivos.
3. 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
3. Herramientas elementales.
Vectores, declaración 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’];
?>
3. 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
3. Herramientas elementales.
Inclusión de archivos
include
e
include_once
require
y
require_once
include(ruta_de_archivo);
include(‘pie.php’);
3. 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
3. Herramientas elementales.
PHP y el sistema de archivos
Cerrar archivos.
boolean fclose($resource);
fclose($archivo);
Cuando no puede cerrar el archivo devolverá false
3. Herramientas elementales.
PHP y el sistema de archivos
Modos de apertura
r
Abrir sólo para lectura.
r+
Abrir para lectura y escritura.
w
Abrir sólo 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 sólo para anexar. 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 sólo 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.
3. Herramientas elementales.
PHP y el sistema de archivos
Lectura de archivos
Instrucción
Descripción
Devuelve
fgets
Lee una cadena de texto de un Cadena de
archivo.
caracteres.
fgetc
Lee un carácter de un archivo.
Símbolo.
file_get_contents
Lee el contenido completo de
un archivo.
Cadena de
caracteres.
Un vector
file
Abre un archivo y deposita su
contenido completo en un
vector
fread
Lee un determinado número
de bytes
Bytes leídos
3. Herramientas elementales.
PHP y el sistema de archivos
Lectura de archivos
Instrucción
Descripción
Devuelve
fgets
Lee una cadena de texto de un Cadena de
archivo.
caracteres.
fgetc
Lee un carácter de un archivo.
Símbolo.
file_get_contents
Lee el contenido completo de
un archivo.
Cadena de
caracteres.
Un vector
file
Abre un archivo y deposita su
contenido completo en un
vector
fread
Lee un determinado número
de bytes
Bytes leídos
3. 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);
?>
3. 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);
?>
3. Herramientas elementales.
PHP y el sistema de archivos
Escribir a un archivo.
Función
fwrite
fputs
file_put_contents
Descripción
Escribe datos a un archivo. Recibe
como parámetro un manejador de
archivo.
Escribe una cadena a un archivo.
Escribe una cadena a un archivo.
3. 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);
?>
3. 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
3. 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, FILE_APPEND);
?>
En este ejemplo el contenido no es reemplzado gracias
a FILE_APPEND.
4. Diseño de aplicaciones Web
Temario de Diseño de aplicaciones Web
•
Formularios HTML
•
Métodos de envío GET y POST
•
Funciones para asegurar la entrada del usuario (htmlentities,
addslashes)