AGkk234.5 sintaxis.php3 Sintaxis básica código PHP entre comentarios 1 línea: con // ó # ó /* ….. */ más de 1 linea: /* …. */ las variables empiezan por el signo $ no hay que declararlas antes de usarlas pueden coger cualquier tipo, así como cambiar de tipo sobre la marcha mayusculas / minusculas da igual menos para el nombre de las variables Ej: la función echo y ECHO son la misma, pero $i es diferente a $I cada instrucción acaba en ;, podemos meter varias instrucciones por linea"> AGkk234.5 sintaxis.php3 Sintaxis básica código PHP entre comentarios 1 línea: con // ó # ó /* ….. */ más de 1 linea: /* …. */ las variables empiezan por el signo $ no hay que declararlas antes de usarlas pueden coger cualquier tipo, así como cambiar de tipo sobre la marcha mayusculas / minusculas da igual menos para el nombre de las variables Ej: la función echo y ECHO son la misma, pero $i es diferente a $I cada instrucción acaba en ;, podemos meter varias instrucciones por linea">

La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

PHP. PHP (Hypertext Preprocessor) preprocesador de Hipertexto Se ejecuta en el servidor El resultado de ejecutarse es código HTML Manual oficial en www.php.net/manual/es.

Presentaciones similares


Presentación del tema: "PHP. PHP (Hypertext Preprocessor) preprocesador de Hipertexto Se ejecuta en el servidor El resultado de ejecutarse es código HTML Manual oficial en www.php.net/manual/es."— Transcripción de la presentación:

1 PHP

2 PHP (Hypertext Preprocessor) preprocesador de Hipertexto Se ejecuta en el servidor El resultado de ejecutarse es código HTML Manual oficial en www.php.net/manual/es Hola <?php echo "mundo"; ?> Hola mundo Hola mundo.php3

3 <?php $i="kk"; echo "A"; //echo "B"; #echo "C"; /*echo "D";*/ /*echo "E"; echo "F";*/ echo "G"; echo $i; $i=2; echo $i; ECHO $i+1; $i=4.5; echo $i;?> AGkk234.5 sintaxis.php3 Sintaxis básica código PHP entre comentarios 1 línea: con // ó # ó /* ….. */ más de 1 linea: /* …. */ las variables empiezan por el signo $ no hay que declararlas antes de usarlas pueden coger cualquier tipo, así como cambiar de tipo sobre la marcha mayusculas / minusculas da igual menos para el nombre de las variables Ej: la función echo y ECHO son la misma, pero $i es diferente a $I cada instrucción acaba en ;, podemos meter varias instrucciones por linea

4 <?php echo hola mundo ; ?> Sintaxis básica - En un archivo PHP es posible convinar PHP y HTML de las siguientes formas a.php3 <?php echo hola mundo; ?> ; ?> Uno ; ?> Dos ; ?> Tres c.php3 d.php3 hola mundo b.php3

5 <?php $n = 1234; $n = -123; $n = 1.234; $a="cadena 1"; //comillas simples o dobles //OPERADOR. PARA CONCATENAR $b='cadena 2 '.$a; //COMILLAS DOBLES: sí se expande la variable a su valor echo "Esta es $a"." "; echo "Esta es ".$a." "; //OPERADOR. PARA CONCATENAR //COMILLAS SIMPLES: aqui no se expande la variable a su valor echo 'Esta es $a'." "; echo 'Esta es '.$a." "; /* si utilizamos un tipo de comillas para la cadena, dentro de esta podemos incluir el otro tipo de comillas*/ echo "dijo 'hola'"." "; //si queremos rizar el rizo, e incluir el mismo tipo de comillas echo 'dijo \'hola\' '." "; echo "dijo \"hola\" "." "; //con comillas simples no entiende los \n o los \t echo ' 1\n 2\t 3 '; //con comillas simples no entiende los \n o los \t echo " 1\n 2\t 3 "; echo "dijo ".'"hola"'." "; ?> Esta es cadena 1 Esta es $a Esta es cadena 1 dijo 'hola' dijo 'hola' dijo "hola" 1\n 2\t 3 1 2 3 dijo "hola" MI RECOMENDACIÓN: UTILIZAR COMILLAS DOBLES Y CONCATENAR CUANDO NECESITEIS METER COMILLAS DOBLES EN LA CADENA TIPOS

6 <?php $nombre=""; $nombre="Juan"; $apellidos="Perez"; // no se suman las cadenas, sino que se concatenan con el operador. $nombre_completo=$nombre.' '.$apellidos; echo $nombre_completo; echo ' '; //este es el otro tipo de convenio para nombres de variables $NombreCompleto=$nombre.' '.$apellidos; echo $NombreCompleto; echo ' '; $nombre = $nombre.' '.$apellidos; //o $nombre.= ' '.$apellidos; echo $nombre; echo ' '; //las cadenas son arrays de 0 a longitud-1 /* Obtener el primer carácter de una cadena */ $str = 'Esto es una prueba.'; $first = $str[0]; echo "Prueba1:$first $str "; /* Obtener el último carácter de una cadena. */ $str = 'Esto es aún una prueba.'; $last = $str[strlen($str)-1]; echo "Prueba2: $str $last "; $i=0; $i++; $i--; echo $i; ?> Juan Perez Prueba1:E Esto es una prueba. Prueba2: Esto es aún una prueba.. 0 TIPOS2

7 <?php $i=2004; //número --> cadena $i=$i.""; //acabamos de convertirla en cadena echo $si[0]; echo $i[1]; echo ' '; //cadena --> número $si=$i+2; //acabamos de convertirla en número echo $i; ?> 20 2006 Conversiones El operador utilizado nos determina el tipo

8 <?php //empiezan en 0 $dia[0]="LUNES"; $dia[1]="MARTES"; $dia[2]="MIERCOLES"; $dia[3]="JUEVES"; $dia[4]="VIERNES"; $dia[5]="SABADO"; $dia[6]="DOMINGO"; echo $dia[3]; echo ' '; $dia2=array("LUNES","MARTES"); echo $dia2[1]; echo ' '; $i=3; $i=date("w")-1; //función q me indica 0 para domingo, 1 para lunes.. echo "Hoy es el dia $dia[$i]"; echo ' '; //Esto funciona echo "$dia[$i]"; echo ' '; //Esto NO funciona, descomentar para probar //y es porque se lia al expandir la variable $i //dentro de una cadena con comillas //echo "$dia[$i+1]"; echo ' '; //Esto SI funciona echo $dia[$i+1]; echo ' '; //Esto SI funciona echo "Hoy es el dia ".$dia[date("w")-1]; //OJO, LOS DOMINGOS FALLARA, AVERIGUAR POR QUE MOTIVO ?> JUEVES MARTES Hoy es el dia LUNES LUNES MARTES Hoy es el dia LU NES ARRAY

9 <?php $a["color"] = "rojo"; $a["sabor"] = "dulce"; $a["forma"] = "redondeada"; $a["nombre"] = "manzana"; $a[3] = 4; //el array asociativo no expande entre comillas dobles //echo "Color: $a["color"] Nombre: $a["nombre"] y número: $a[3] "; //solucion: echo "Color: ".$a["color"]." Nombre: ".$a["nombre"]." y número: $a[3] "; ?> Color: rojo Nombre: manzana y número: 4 ARRAYS2: asociativos <?php $dia[0]="LUNES"; $dia[1]="MARTES"; $dia[2]="MIERCOLES"; $dia[3]="JUEVES"; $dia[4]="VIERNES"; $dia[5]="SABADO"; $dia[6]="DOMINGO"; echo "Numero de elementos:".count($dia)." "; for ($i = 0; $i < 7; $i++) { echo $dia[$i].' '; } ?> Numero de elementos:7 LUNES MARTES MIERCOLES JUEVES VIERNES SABADO DOMINGO Operador count

10 DATOS AL SERVIDOR MEDIANTE URL <?php if(!$i) //si no tiene valor se lo doy {//esto solo ocurre la primera vez $i=1; $cadena="José Maño - "; } else //si ya tienen valor lo incremento { //$i = $i++; esto esta mal $i++; $cadena = $cadena.' '.$cadena; } //en cualquier caso muestro su valor echo "i:$i"; echo ' '; echo "Cadena: ".htmlentities($cadena); //codificar a entidades HTML echo ' '; //relleno la url. Para separar variables utilizar & echo " Incrementar "; //cod. cadenas a form. URL echo " Ir al principio "; ?> url.php3

11 DATOS AL SERVIDOR MEDIANTE URL string htmlentities ( string cadena)*/ -Convierte los acentos, tildes, etc a entidades HTML -Como ensucia el codigo, solo la utilizaremos cuando vallamos a entregar la página, ya que en los navegadores con el español instalado se verá correctamente string urlencode ( string cadena) - Devuelve una cadena en la que todos los carácteres no alfanuméricos (no letras o numeros) han sido reemplazados con un signo de porcentaje (%) seguido por dos dígitos hexadecimales. Los espacios han sido codificados como signos positivos (+). - PHP nos decodifica ya el contenido de las variables enviadas en una URL o formulario, así que no hemos de utilizar la función inversa a esta

12 DATOS AL SERVIDOR MEDIANTE FORMULARIO INGRESO CLIENTE <?php //PHP nos crea automaticamente las variables que nos llegan a través //de una URL o de un formulario, en este caso $vnombre $vdni y //vmando_ya_los_datos value //si no tiene valor definido, es porque no venimos del formulario if (!$vmando_ya_los_datos) echo Nombre: DNI: "; else //si sí tiene valor definido (nos da igual que valor, con que sea dif. a cadena vacia) echo " Se realizó correctamente el ingreso de $vnombre con DNI: $vdni"; ?> secuencia formulario.php3

13 DATOS AL SERVIDOR MEDIANTE FORMULARIO INGRESO CLIENTE <?php $msg_error=""; if($vmando_ya_los_datos) { if (!$vnombre) $msg_error= "Le falta por darnos el nombre "; if (!$vdni) $msg_error= $msg_error."Le falta por darnos el dni "; echo $msg_error; } if ( ($msg_error)||(!$vmando_ya_los_datos) ) //hemos de mostrarlo echo Nombre: DNI: "; else echo "El usuario fue añadido correctamente a blablabla..."; ?> formulario.php3

14 Ver maquina de estados en PHP

15 Operadores de comparación == !=><>=<= OperadorNombreEjemploDevuelve cierto cuando: && Y (7>2) && (2<4) Devuelve verdadero cuando ambas condiciones son verdaderas. and (7>2) and (2<4) || O (7>2) || (2<4) Devuelve verdadero cuando al menos una de las dos es verdadera. or (7>2) or (2<4) !No ! (7>2) Niega el valor de la expresión. Operadores lógicos

16 Condicionales $a=1;$b=0;$c=""; if ($a) echo "a es diferente de 0 "; if ($b) echo "b tiene valor diferente a cero "; if (!$b) echo "b tiene valor cero, o no esta definida "; if ($d) echo "la variable d esta definida y tiene valor diferente a 0"; else echo "la variable d NO esta definida o tiene valor 0"; echo ' '; if ($c) //si NO es cadena vacia echo $c; else //si cadena vacia (o no esta definida) echo '$c es una cadena vacia'; condicionales.php3

17 Condicionales2 $a=1;$b=0;$posicion = "arriba"; if ($a < $b) echo "a es menor que b"; else //varias instrucciones con llaves { echo "no (a < b)"; echo " "; } switch($posicion) { case "arriba": // Bloque 1 echo "La variable contiene"; echo " el valor arriba "; /* break; */ case "abajo": // Bloque 2 echo "La variable contiene"; echo " el valor abajo "; break; case "izquierda": case "derecha": echo "La variable contiene"; echo "izquierda o derecha "; break; default: // caso por defecto echo "La variable contiene otro valor"; echo " distinto a los anteriores"; } condicionales2.php3 Si quitamos el break, el bloque 1 se extiende hasta el siguiente break

18 Bucles //Estos tres bucles tienen la misma salida //Recordar que el do-while se ejecuta siempre almenos //una vez, por verificar la condición al final $i=0; while ($i<5) { echo "El valor de i es ", $i," "; $i++; } echo " "; for($i=0 ; $i<5 ; $i++) { echo "El valor de i es ", $i," "; } echo " "; $i = 0; do { echo "El valor de i es ", $i," "; $i++; } while ($i<5); bucles.php3

19 Salida por pantalla No formateada ECHO Formateada PRINTF / ECHO SPRINTF printf(2 con diferentes formatos: %d %f %.2f ",2,2,2); $apellidos="Perez"; printf("Nombre: %s Apellidos %s Letra DNI: %s - %c","Pepe",$apellidos,"s",ord("s") ); //Cuando utilizamos %c en printf para mostrar un caracter, //espera que le pasemos el cod. ascii del caracter //sprintf no la muestra, sino que la devuelve $cadena=sprintf(" Nombre: %s","Jose"); echo $cadena; printf($cadena); echo sprintf(" Nombre: %s ","Luis"); printf.php3 2 con diferentes formatos: 2 2.000000 2.00 Nombre: Pepe Apellidos Perez Letra DNI: s - s Nombre: Jose Nombre: Jose Nombre: Luis

20 Código ASCII y viceversa FunciónSintaxisResultado chr(código ASCII)chr(97)a ord("cadena")ord("a")97 Longitud y conversiones FunciónSintaxisResultado strlen("cadena")strlen("Mide")4 strtolower("cadena")strtoupper("CONVIERTE")convierte strtoupper("cadena")strtoupper("a mayúsculas")A MAYúSCULAS ucwords("cadena")ucwords(capitaliza palabras") Capitaliza Palabras ucfirst("cadena")ucfirst("mayúscula al principio")Mayúscula al principio FUNCIONES DE CADENA

21 Extracción de subcadenas FunciónSintaxis Resultado substr("cadena",n)substr("Extrae caracteres",3) rae caracteres substr("cadena",n)substr("Extrae caracteres",0) Extrae caracteres substr("cadena",n)substr("Extrae caracteres",-5) teres substr("cadena",n)substr("Extrae caracteres",-2) es substr("cadena",n,m)substr("Extrae caracteres",2,6) trae c substr("cadena",n,m)substr("Extrae caracteres",0,8) Extrae c substr("cadena",n,m)substr("Extrae caracteres",2,-3) trae caracte substr("cadena",n,m)substr("Extrae caracteres",-7,5) acter substr("cadena",n,m)substr("Extrae caracteres",-7,-5) ac substr("cadena",n,m)substr("Extrae caracteres",-5,-7) Eliminando espacios FunciónSintaxisResultado ltrim("cadena")ltrim("\n \nEliminar espacios")Eliminar espacios rtrim("cadena")rtrim("Eliminar espacios\n \n")Eliminar espacios trim("cadena")trim("\n \nEliminar espacios\n \n")Eliminar espacios chop("cadena")chop("\n \nEliminar espacios\n \n")Eliminar espacios

22 str_pad("cadena",n,"Relleno",Tipo) str_pad("Pepe",10,"*",STR_PAD_BOTH)***Pepe*** str_pad("cadena",n,"Relleno",Tipo) str_pad("Pepe",10,"*",STR_PAD_LEFT)******Pepe str_pad("cadena",n,"Relleno",Tipo) str_pad("Pepe",10,"*",STR_PAD_RIGHT)Pepe****** str_pad("cadena",n,"Relleno",Tipo) str_pad("Pepe",10,"*")Pepe****** str_replace ("lo que dice",lo que dira,"Cadena") str_replace("e","a","Pepe")Papa str_replace ("lo que dice",lo que dira,"Cadena") str_replace("pe","pa","Pepepe")Pepapa str_replace ("lo que dice",lo que dira,"Cadena") str_replace("Pepe","Luis","Pepe")Luis substr_replace ("Cadena",lo que dira,n,m) substr_replace("Pepe","Luis",2,-1)PeLuise FunciónSintaxisResultado strrev("cadena") strrev("Invierte la cadena")anedac al etreivnI str_repeat("cadena",n) str_repeat("Rep",5)RepRepRepRepRep Modificaciones de cadenas

23 Funciones //En PHP3, las funciones deben definirse antes de que se //referencien. En PHP4 no existe tal requerimiento function media_aritmetica($a, $b) { $media=($a+$b)/2; return $media; } echo media_aritmetica(4,6)," "; //Procedimiento: función que no devuelve valor function muestra_valores($a, $b, $c) { echo "a: $a, b: $b, c:$c"; } $cad="kk"; muestra_valores("hola",media_aritmetica(4,6),$cad); funciones.php3 5 a: hola, b: 5, c:kk

24 Parámetros por defecto //Uso de parámetros por defecto en funciones function makecoffee ($type = "cappucino") { return "Hacer una taza de $type.\n "; } echo makecoffee (); echo makecoffee ("espresso"); //De utilizar parámetros por defecto, estos tienen //que estar a la derecha del último valor por defecto function HacerCafe ($numero, $type = "cappucino") { return "Hacer $numero tazas de $type.\n "; } echo HacerCafe (1,"expresso"); echo HacerCafe (1); //funciona bien //Si no lo hacemos así, nos llevaremos sorpresas, además de un warning function makeyogurt ($tipo = "acidophilus", $sabor) { return "Haciendo un yogurt $tipo de $sabor.\n "; } echo makeyogurt ("mora"); funciones2.php3 Hacer una taza de cappucino. Hacer una taza de espresso. Hacer 1 tazas de expresso. Hacer 1 tazas de cappucino. Warning: Missing argument 2.. Haciendo un yogurt mora de.

25 <?php //string trim ( string cad) //Esta función elimina los espacios en blanco del comienzo y del final de una cadena //Los caracteres de espacio que elimina realmente son: "\n", "\r", "\t", "\v", "\0", y el espacio en sí. if($vmando_ya_los_datos) //la variable es muy larga pero es para que lo entendais { echo "Los datos recibidos son: "$vnombre" y "$vdni&quot"; $vnombre = trim($vnombre); $vdni = trim($vdni); echo " Los datos recibidos, tras pasarles la función trim son: "$vnombre" y "$vdni&quot, pero para apreciarlo bien fijaros en la URL (signo + es un espacio) y en el código fuente"; } if (!$vmando_ya_los_datos) //entonces hemos de mostrar formulario echo " Nombre: DNI: ?> Función TRIM trim.php3

26 Funciones sin parametros Ambito de las variables <?php $a=1; $b=3; function muestra_a() { echo $a; } function muestra_b() { global $b; //declaración explicita de uso de variable global echo $b; } muestra_a(); muestra_b(); $b=5; muestra_b(); ?> ambito variables.php3 135 Al contrario que en C, en las funciones no se puede acceder directamente a las variables globales salvo que lo hagamos explicitamente. Esto es pq una funcion jamas deberia utilizar un variable global. Cuando todo lo que necesita una funcion lo ponemos en su lista de parametros, ante un valor inesperado de una variable global, rapidamente localizaremos en que partes del programa se modifica esta variable global.

27 Include(fichero local); <?php echo "PARTE DE ARRIBA " ?> Cuando ponemos la instrucción de PHP Include(fichero_local) conseguimos algo parecido a insertar todo el código de fichero_local justo en el sitio donde esta la linea del include. En los archivos incluidos, el código PHP debe ir entre PARTE DEL MEDIO <?php echo "PARTE DE ABAJO " ?> Include1.php3 <?php echo "PARTE DE ARRIBA " ?> PARTE DEL MEDIO <?php echo "PARTE DE ABAJO " ?> Include1.php3 De esta forma tan sencilla podemos darle un aspecto común a todas nuestras páginas abajo1.inc arriba1.inc

28 "> inicio contacto © 1999-2004 Empresa abajo2.inc arriba2.inc <?php $titulo = "Foro de dudas"; $description = "Foro de PHP, HTML y otras tecnologías web"; $palabras_clave = "PHP, HTML"; $pregunta = "¿Donde se ejecuta PHP?"; $respuesta = "En el servidor"; include("libreria1.inc"); //nuestro código PHP reutilizable include("arriba2.inc"); //nos vale para cq página include("foro.inc"); //solo nos vale para el foro include("abajo2.inc"); //nos vale para cq página ?> Include2.php3 foro.inc <?php function fecha() { return date( "M d Y H:i:s"); } ?> libreria1.inc

29 <?php $titulo = "Foro de dudas"; $description = "Foro de PHP, HTML y otras tecnologías web"; $palabras_clave = "PHP, HTML"; //$pregunta = "¿Donde se ejecuta PHP?"; //$respuesta = "En el servidor"; include("libreria1.inc"); //nuestro código PHP reutilizable include("arriba2.inc"); //nos vale para cq página include("foro.inc"); //solo nos vale para el foro include("abajo2.inc"); //nos vale para cq página ?> Include2.php3 ¿donde se ejecuta el html? ¿………………..?


Descargar ppt "PHP. PHP (Hypertext Preprocessor) preprocesador de Hipertexto Se ejecuta en el servidor El resultado de ejecutarse es código HTML Manual oficial en www.php.net/manual/es."

Presentaciones similares


Anuncios Google