PHP PHP HypertextPreProcessor PHP 1. Introducción 2. Comentarios 3. Variables 4. Operadores 5. Desplegar(output) 6. Arrays o matrices 7. Estructuras de control 8. Funciones 9. Manejo de strings
Introducción a PHP Lenguaje de scripts Preprocesador de hipertexto Open-source Embebido en páginas HTML Ejecutado en un servidor remoto PHP está disponible en el sitio http://www.php.net PHP soporta muchas combinaciones de sistema operativo, servidor Web y servidor de base de datos. Ejemplo 1.1 <html> <head> <title>ejemplo 1.1</title> </head> <body> echo Hola mundo, es mi primer script PHP! ; En un script PHP el código del prógrama se mezcla con el HTML. El código PHP se encierra en etiquetas que indican el principio y el final del modo PHP. El punto y coma ; es obligatorio al final de cada instrucción. Los documentos PHP se guardan en archivos con sufijo.php
Proceso PHP Interprete PHP Web Browser HTTP request HTTP response Web Server HTTP request HTTP response Documento PHP Documento PHP Documento HTML Base de datos 5 Comentarios <html> <head> <title>ejemplo 2.1</title> </head> <body> echo "Primera parte "; // Comentario de línea estilo C++ /* Comentario de varias líneas */ echo "Segunda parte "; echo "Parte final "; # Comentario estilo shell </body> </html>
Variables En PHP el nombre de la variable debe empezar siempre con un símbolo de dólar $ El segundo caracterdel nombre debe ser letra ó underscore _ A partir del tercer caracter se pueden usar letras, cifras ó underscore Los nombres son sensibles a mayúsculas y minúsculas Ejemplos: $year, $page_title, $n1, $_POST, No es necesario declarar el tipo de una variable Enteros Flotantes Booleanos Strings Arreglos Objetos <html> <head> <title>ejemplo 3.1</title> </head> <body> $txt= "HelloWorld!"; $number= 16; echo $txt; echo "<br/>"; echo $number; echo "<br/>"; echo "$txt y $number"; </body> </html> Ejemplo 3.1
Variables Globales <html> <head> <title>ejemplo 3.2</title> </head> <body> $a = 1; $b = 2; functionsum() { global $a, $b; $b = $a + $b; } Sum(); echo $b; Variables predefinidas superglobales Son variables disponibles en todos los contextos $GLOBALS $_SERVER $_GET $_POST $_COOKIE $_FILES $_REQUEST $_SESSION $_ENV
Operadores aritméticos Operador Nombre Ejemplo Descripción + Suma 5 + 6 Suma dos números - Resta 7-9 Resta dos números * Multiplicación 6 * 3 Multiplica dos números / División 4 / 8 Divide dos números % Módulo 7 % 2 Devuelve el residuo de la divisón ++ Suma 1 $a++ Suma 1 al contenido de una variable. -- Resta 1 $a-- Resta 1 al contenido de una variable. Ejemplo 4.1 <html> <head> <title>ejemplo 4.1</title> $a = 10; $b = 5; echo "a=",$a,"<br>"; echo "b=",$b,"<br>"; echo "suma ",$a + $b,"<br>"; echo "resta ", $a -$b,"<br>"; echo "multiplicación ", $a * $b,"<br>"; echo "división ",$a / $b,"<br>"; $a++; echo "a incrementada ",$a,"<br>"; $b--; echo "b decrementada",$b,"<br>";
Operadores de comparación Operador Nombre Ejemplo Devuelve True (1) cuando: == Igual $a == $b $a es igual $b!= Distinto $a!= $b $a es distinto $b < Menor que $a < $b $a es menor que $b > Mayor que $a > $b $a es mayor que $b <= Menor o igual $a <= $b $a es menor o igual que $b >= Mayor o igual $a >= $b $a es mayor o igual que $b <html> <head> <title>ejemplo 4.2</title> </head> <body> $a = 8; $b = 3; $c = 3; echo "1 ".($a == $b)."<br>"; echo "2 ".($a!= $b)."<br>"; echo "3 ".($a < $b)."<br>"; echo "4 ".($a > $b)."<br>"; echo "5 ".($a >= $c)."<br>"; echo "6 ".($b <= $c)."<br>"; Ejemplo 4.2
Operadores lógicos Operador Nombre Ejemplo Devuelve True cuando: && AND (7>2) && (2<4) Ambas condiciones son verdaderas. and AND (7>2) and (2<4) Ambas condiciones son verdaderas. Or (7>2) (2<4) Al menos una de las dos es verdadera. or Or (7>2) or (2<4) Al menos una de las dos es verdadera.! Not! (7>2) La expresión es falsa. Desplegar void echo( string $arg1 [, string $... ] ) Los paréntesis son opcionales si se invoca echo con un solo argumento. En el caso de invocar echo con varios argumentos no se deben poner paréntesis
Desplegar 2 intprint( string $arg) Los paréntesis son opcionales. Siempre regresa el valor 1. Solo admite un parámetro. Desplegar 3 intprintf( string $format [, $args[, $... ]] ) Produce una salida con el formato especificado. Regresa la longitud de la cadena impresa.
Ejemplo 5.1 <html> <head> <title>ejemplo 5.1</title> </head> <body> $money1 = 68.75; $money2 = 54.35; $money = $money1 + $money2; print $money; print"<br/>"; $l=printf("%01.2f", $money); print"<br/>"; print longitud=.$l. caracteres ; </body> </html> Arreglos Inicialización <html><head> <title>ejemplo 6.1</title> $a=array("a"=>"dog","b"=>"cat","c"=>"horse"); print_r($a); echo "<br/>"; $b=array("dog","cat","horse"); print_r($b); Salida Si no se especifica, el índice será numérico
Acceso a los elementos Ejemplo 6.2 <html><head> <title>ejemplo 6.2</title> $a=array("a"=>"dog","b"=>"cat","c"=>"horse"); echo $a['a']," ",$a['b']," ", $a['c']; Estructuras de Control if else elseif while do..while for foreach switch continue break return exit die 22
Ejemplo 7.1 <html><head> <title>ejemplo 7.1</title> $posicion= "arriba"; switch($posicion) { case "arriba": // Bloque 1 echo "La variable contiene el valor arriba"; break; case "abajo": // Bloque 2 echo "La variable contiene el valor abajo "; break; default: // Bloque 3 echo "La variable contiene otro valor distinto de arriba y abajo "; } 23 Ejemplo 7.2 Ejemplo de ciclo while <html><head> <title>ejemplo 7.2</title> <b>antes del ciclo</b><br/> $i=0; while($i<5) { echo "El valor de i es ", $i,"<br/>"; $i++; } <b>despues del ciclo</b> 24
Ejemplo 7.3 Ejemplo de ciclo for <html><head> <title>ejemplo 7.3</title> <b>antes del ciclo</b><br/> for($i=0 ; $i<5 ; $i++) { echo "El valor de i es ", $i,"<br/>"; } <b>despues del ciclo</b> 25 Funciones El uso de funciones nos da la capacidad de agrupar varias instrucciones bajo un solo nombre y poder llamarlas a estas varias veces desde diferentes sitios, ahorrándonos la necesidad de escribirlas de nuevo. Opcionalmente podemos pasarle parámetros a las funciones que se trataran como variable locales y así mismo podemos devolver un resultado con la instrucción returnvalor; Esto produce la terminación de la función retornando un valor. 26
Funciones <html><head> <title>ejemplo 8.1</title> functionpromedio($a, $b) { $prom=($a+$b)/2; return$prom; } echo promedio(100, 80),"<br>"; echo promedio(8.5, 8.6),"<br>"; Ejemplo 8.1 27 Manejo de strings. (punto) Permite concatenar dos expresiones formando una nueva cadena de caracteres.= Une la expresión de la derecha con la de la izquierda del operador Int strlen( string $string ) Intstrpos( string $haystack, $needle [, int$offset ] ) Intstrcmp( string $str1, string $str2 ) Regresa la longitud del string Regresa la posición incial del string needle dentro del stringhaystack. Empieza a buscar desde el principio a menos que se especifique una posicion inicial (offset) Regresa 0 si ambos strings son iguales, regresa un valor positivo si el primer string es mayor que el segundo.
Ejemplo 9.1 <html><head> <title>ejemplo 9.1</title> $mystring = 'abc'; $findme = 'a'; $pos = strpos($mystring, $findme); // Note our use of === (equal an of the same type). // because the position of 'a' was the 0th (first) character. if($pos === false) { echo "The string '$findme' was not found in the string '$mystring'"; } else{ echo "The string '$findme' was found in the string '$mystring'"; echo " and exists at position $pos"; } Ejemplo 9.1 (cont ) echo "<br/>"; // We can search for the character, ignoring anything before the offset $newstring = 'abcdef abcdef'; $pos = strpos($newstring, $findme, 1); // $pos = 7, not 0 echo "The string '$findme' was found (starting the search at the second position) in the string '$newstring'"; echo " and exists at position $pos";