curso de php

31
Curso de PHP Tema 2: Lenguaje PHP básico

Upload: brayan-milton-ormeno-lee

Post on 09-Nov-2015

217 views

Category:

Documents


2 download

DESCRIPTION

Lenguaje PHP Basico

TRANSCRIPT

  • Curso de PHPTema 2: Lenguaje PHP bsico

  • Tema 2: Lenguaje PHP bsicoSintaxis bsicaTipos de datosVariablesConstantesExpresiones y operadoresEstructuras de controlFuncionesTablasBibliotecas de funciones

  • Sintaxis bsicaPHP es sensible a las maysculasCmo se incrusta en la pgina web?recomendado, siempre disponibleequivale a Las instrucciones se separan con un ; como en C. La marca final ?> implica un ;Comentarios: como en C, /* */ y //

  • Sintaxis bsicaPara imprimir: echo y print echo: muestra una o ms cadenasecho cadena1 [, cadena2]; // no es una funcin echo Hola mundo;echo Hola , mundo; print: muestra una cadenaprint cadena; // no es una funcin print Hola mundo;print Hola . mundo;

  • Sintaxis bsicaEjemplo:

    Mi primer programa en PHP

  • Sintaxis bsicaUso de \n para generar cdigo HTML legiblea) Sin \nprint (Prrafo 1);print (Prrafo 2);

    Prrafo 1Prrafo 2

    Prrafo 1

    Prrafo 2Cdigo PHPCdigo HTMLSalida

  • Sintaxis bsicaUso de \n para generar cdigo HTML legibleb) Con \nprint (Prrafo 1\n);print (Prrafo 2\n);

    Prrafo 1Prrafo 2

    Prrafo 1

    Prrafo 2Cdigo PHPCdigo HTMLSalida

  • Sintaxis bsicaEjercicio 1: programa que muestra un mensajeIlustra cmo incrustar cdigo PHP en un documento HTML y cmo imprimir desde PHP

  • Sintaxis bsicaInclusin de ficheros externos:include()require()Ambos incluyen y evalan el fichero especificadoDiferencia: en caso de error include() produce un warning y require() un error fatalSe usar require() si al producirse un error debe interrumpirse la carga de la pginaEjemplo:

  • Sintaxis bsica

    Ttulo

    // Cdigo HTML + PHP. . .

  • Tipos de datosPHP soporta 8 tipos de datos primitivos:boolean, integer, double, stringarray, objectresource, NULLEl tipo de una variable no se suele especificar. Se decide en tiempo de ejecucin en funcin del contexto y puede variarFunciones de inters:La funcin gettype() devuelve el tipo de una variableLas funciones is_type comprueban si una variable es de un tipo dado:is_array(), is_bool(), is_float(), is_integer(), is_null(), is_numeric(), is_object(), is_resource(), is_scalar(),is_string()La funcin var_dump() muestra el tipo y el valor de una variable. Es especialmente interesante con los arrays

  • Tipos de datosTipo integer (nmeros enteros)27, -5, 0Tipo double (nmeros reales)1.234, -5.33Tipo boolean (lgico)Valores: true, false (insensibles a las maysculas)El 0 y la cadena vaca tienen valor false

  • Tipos de datosTipo string:Las cadenas se encierran entre comillas simples o dobles:simples: admite los caracteres de escape \ (comilla simple) y \\ (barra). Las variables NO se expandendobles: admite ms caracteres de escape, como \n, \r, \t, \\, \$, \. Los nombres de variables S se expanden$a = 9;print a vale $a; // muestra a vale $aprint a vale $a; // muestra a vale 9Acceso a un carcter de la cadena:La forma es $inicial = $nombre{0};

  • VariablesLas variables siempre van precedidas de un $El nombre es sensible a las maysculasComienzan por letra o subrayado, seguido de letras, nmeros o subrayadoVariables predefinidas:$GLOBALS, $_SERVER, $_GET, $_POST, $_COOKIES, $_FILES,$_ENV, $_REQUEST, $_SESSIONmbito: globales al fichero (excepto funciones) o locales a una funcinEjemplo:$valor = 5;print El valor es: . $valor . \n;print El valor es: $valor\n; // ojo: comillas dobles

    Resultado:El valor es: 5

  • ConstantesDefinicin de constantes:define (CONSTANTE, hola);print CONSTANTE;No llevan $ delanteSlo se pueden definir constantes de los tipos escalares (boolean, integer, double, string)

  • Expresiones y operadoresOperadores aritmticos: +, -, *, /, %, ++, --Operador de asignacin: = 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 comparacin: ==, !=, , = y otrosOperador de control de error: @. Antepuesto a una expresin, evita cualquier mensaje de error que pueda ser generado por la expresinOperadores lgicos: and (&&), or (||), !, xor and/&& y or/|| tienen diferentes prioridadesOperadores de cadena: concatenacin: . (punto) asignacin con concatenacin: .=

  • Expresiones y operadoresPrecedencia de operadores (de mayor a menor):

    ++, --*, /, %+,-===, !=&&||

  • Estructuras de controlif-elsewhiledo .. whileforforeachswitch

  • Estructuras de controlif-elseif (expresin1)sentencia 1else if (expresin2)sentencia 2...else if (expresin n)sentencia nelsesentencia n+1Mismo comportamiento que en C Las sentencias compuestas se encierran entre llaveselseif puede ir todo junto

  • Estructuras de controlwhilewhile (expresin)sentenciaMismo comportamiento que en C

  • Estructuras de controlforfor (expresin1; expresin2; expresin3)sentenciaMismo comportamiento que en C

  • Estructuras de controlswitchswitch (expresin){case valor 1:sentencia 1break;case valor 2:sentencia 2break;case valor n:sentencia n break;defaultsentencia n+1}Mismo comportamiento que en C, slo que la expresin del case puede ser integer, float o string

  • Estructuras de controlEjercicio 2: programa que calcula una tabla de multiplicarIlustra cmo manejar variables y cmo usar bucles

  • FuncionesEjemplo:function suma ($x, $y){ $s = $x + $y; return s;}

    $a=1;$b=2;$c=suma ($a, $b);print $c;

  • FuncionesPor defecto los parmetros se pasan por valorPaso por referencia:function incrementa (&$a){ $a = $a + 1;}

    $a=1;incrementa ($a);print $a; // Muestra un 2

  • FuncionesArgumentos por defectofunction muestranombre ($titulo = "Sr."){ print "Estimado $titulo:\n";}muestranombre ();muestranombre ("Prof.");Salida:Estimado Sr.:Estimado Prof.:

  • FuncionesLos argumentos con valores por defecto deben ser siempre los ltimos:function muestranombre ($nombre, $titulo= "Sr."){ print "Estimado $titulo $nombre:\n";}muestranombre (Fernndez);muestranombre (Fernndez, "Prof.");Salida:Estimado Sr. Fernndez:Estimado Prof. Fernndez:

  • TablasSintaxis:array ([clave =>] valor, ...)La clave es una cadena o un entero no negativo. El valor puede ser de cualquier tipo vlido en PHP, incluyendo otro arrayEjemplos:$color = array (rojo=>101, verde=>51, azul=>255);$medidas = array (10, 25, 15);Acceso:$color[rojo] // No olvidar las comillas$medidas[0]El primer elemento es el 0

  • TablasLa estructura de control foreach permite iterar sobre arraysSintaxis:foreach (expresin_array as $valor) sentenciaforeach (expresin_array as $clave => $valor) sentenciaEjemplos:foreach ($color as $valor)print Valor: $valor\n;foreach ($color as $clave => $valor)print Clave: $clave; Valor: $valor\n;Salida:Valor: 101Valor: 51Valor: 255Clave: rojo; Valor: 101Clave: verde; Valor: 51Clave: azul; Valor: 255

  • Bibliotecas de funcionesExisten muchas bibliotecas de funciones en PHPAlgunos ejemplos:Funciones de manipulacin de cadenasFunciones de fecha y horaFunciones de arraysFunciones de ficherosFunciones matemticasFunciones de bases de datosFunciones de redAlgunas bibliotecas requieren la instalacin de componentes adicionalesTodas las funciones de biblioteca estn comentadas en la documentacin de PHP

  • Bibliotecas de funcionesEjemplo 3: programa que muestra la fecha actualIlustra cmo usar comentarios, tablas y funciones (propias y de biblioteca). Tambin cmo usar el manual de PHP