Usuario:ManuelRomero/ProgramacionWeb/Distancia2018/Sintaxis/1

De WikiEducator
Saltar a: navegación, buscar



DWES TituloTema3.gif


Introducción a PHP



Icon objectives.jpg
Sección de introducción a PHP
  • En esta sección veremos qué es el lenguaje php y para qué sirve

Qué es php

  • PHP (acrónimo de PHP: Hypertext Preprocessor)

De php podríamos decir

  • Es un lenguaje de código abierto
  • Muy popular (Podríamos pensar en un estándar?), una gran comunidad de soporte en internet que aporta, colabora y soluciona dudas
  • Especialmente adecuado para desarrollo web (Se puede usar como lenguaje de escritorio, pero no es su principal propósito).
  • Actualmente está la versión 8.2 actualizada es considerada la versión estable
  • En el repositorio de ubuntu está especificada igualmente la versión 8.2,y se recomienda usarla como versión para desarrollo
  • Ver las nuevas características de php


Icon inter.gif
Caracterísitcas de php 8.2

https://www.php.net/releases/8.2/en.php


características de php


Icon summary.gif
Recuerda
  • En las aplicaciones de desarrollo web
  1. Se ejecuta en el servidor web
  2. Es incrustado en HTML.
  3. El cliente solo ve el resultado de la ejecución nunca el código


Obtención del lenguaje de marcas para mostrar en el cliente

ProcesoPHP.png


Icon key points.gif

Puntos clave

El documento PHP, una vez interpretado correctamente en el servidor, produce una página HTML que será enviada al cliente.


El servidor en acción



Icon key points.gif

Puntos clave

El código PHP está embebido en documentos HTML,
Esto permite introducir dinamismo fácilmente a un sitio web.


El servidor en acción


Icon key points.gif

Puntos clave

El intérprete PHP ignora el texto del fichero HTML
Hasta que encuentra una etiqueta de inicio del bloque de código PHP embebido.
  • Entonces interpreta las instrucciones hasta el final de etiqueta generando la salida correspondiente que se añade al documento html que se entrega al cliente (en caso de que las instrucciones lo generen)


Restricciones del servidor con php

  • Como PHP se ejecuta del lado del servidor sólo puede tener acceso a los datos del propio servidor.
    • No puede acceder a los recursos del cliente
    • No puede saber qué hora es en el cliente
    • No puede acceder a los archivos del cliente
      • Salvo la excepción de las Cookies

Configuraciones

  • PHP se puede instalar como un servicio independiente (PHP-FPM (FastCGI Process Manager)) o como un módulo de apache php5-mod. Realmente es más eficaz por temas de memoria que corra como un servicio independiente, siendo éste, un tema más de administración que de desarrollo.
Configuración

Por comodidad (todo centrado en el servicio de apache2) en este módulo lo hemos instalado como un módulo de apache, pero en producción se suele instalar como servicio independiente (en este caso se ha de rebotar el servicio de apache o ngix (según servidor) independientemente del servicio de php según los ficheros de configuración que se modifiquen en un momento dado. En cualquier caso, al instalar php, bien como módulo de apache o como servicio independiente, se crea un fichero de cofiguración dónde tenemos las diferentes directivas que podremos modificar (recordad xdebug que modificamos en php.ini).

Cómo escribir PHP

  • Dentro de páginas html
 <?php
    instrucciones
 ?>
  • Nosotros siempre usaremos este estilo para escribir código
  • Otros estilos anteriormente permitido están en desuso o no permitidos


Icon summary.gif
Estilo actualmente descatalogados
  • En la versión 7.0.0 de php se eliminan(Desaconsejan) las etiquetas siguientes:
  1. <%, %> (formato ASP)
  2. #<%= (formato corto)
  3. y la etiqueta de script <script language=""></script>


  • Guardamos el fichero con extensión .php
    • Así sabemos que el interprete php tiene que ejecutar código


Icon activity.jpg
Probando primer programa


Icon summary.gif
Información
existen una función llamada phpinfo().
  • Vamos a probarla y ver la información que genera


  • Haz un programa que en php que ejecute la función phpinfo()





Icon activity.jpg
Probando la extensión
Verifica a ver qué ocurre si la extensión del fichero no es php



Programa: conjunto de instrucciones

Icon objectives.jpg
Objetivo

Un programa es un conjunto de instrucciones que trabajan con valores

  • Analizaremos las instrucciones que hay.
  • Analicemos qué son los valores y cómo los voy a poder almacenar para usar en un programa
  • Posteriormente Veremos cómo se escriben en php.

Planteando un lenguaje de programación

Léxicos
  • Son las palabras reservadas del lenguaje.
http://php.net/manual/es/reserved.keywords.php
Sintaxis
Reglas de construcción.
Son las ya conocidas, pero veremos cómo se construyen las expresiones.
Semántica
Habla del significado.


Icon key points.gif

Puntos clave

Estudiaremos alguna peculiaridad, como el hecho de que php es un lenguaje altamente orientado a expresiones
También que es un lenguaje de tipado dinámico


Instrucciones en un lenguaje de programación

  1. Inicio Fin de bloque
  2. Instrucción/función de leer del teclado, escribir por pantalla
  3. Declaraciones (variables, constantes, funciones, clases, objetos, ...)
  4. Asignación
  5. Invocación (llamada a función o método)
  6. Estructura de control (selectiva, iterativa, control de excepciones).

Tipos de valores usados en php

(Comment.gif: Como hemos comentado, las instrucciones trabajan con valores)



(Comment.gif: Sobre los valores, realizaremos operaciones)



En php tenemos los siguientes valores
TIPOS DE VALORES EN PHP
Valores simples Valores compuestos
Numéricos String Booleanos Null Arrays Objetos Recursos



  1. numércios
  2. Cadenas de caracteres
  3. booleanos
  4. null
  5. arrays
  6. objetos
  7. recursos
//Enteros y reales
5;
5.5;
0b1100101; //Representacion en binario
0xFAfF4; //Representacion en hexadecimal
0733353; //Representacioń en octal
54e34; //Notacion científica
43e-10;
//operaciones +,-*,/ ....
 
//String o cadena de caracteres
"Esto es una cadena";
'esto es otra cadena';
//Operaciones concatenar .
 
//Booleanos
true;
false;
//Operaciones lógicas AND OR !
 
//Valor null
null;
//Ahora tipos compuestos
//arrays
["servidor", "cliente"];
 
//Objetos
class Persona
{
    private $nombre;
    private $apellido;
    private $telefono;
}
 
//recursos
new mysqli();
Instrucción de inicio fin de bloque
 { //Instrucción de inicio de bloque
 } //Instrucción de fin de bloque



Icon key points.gif

PHP instruccion inicio fin

En PHP el bloque inicio y fin está especificado con los caracteres
  { //inicio de bloque
  } //fin de bloque
Por otro lado el inicio del programa se especifica con las etiquetas
 <?php //Etiqueta de inicio de script
 
 ?>  //Etiqueta de fin de script


string

  • Antes de ver cómo escribir un string (echo), vamos a comentar los string.
  • Un string es una cadena de caracteres.
  • Para representarla encerraremos caracteres entre comillas simples o commillas dobles, que dependiendo de lo que contenga, puede tener diferentes comportameninto, como veremos posteriormente.
"Esto es una cadena encerrada entre comillas dobles que tiene caracteres, 
números 12345 y algún caracter no letra como % & y = y cualquiera en principio será imprimible"
'Esto es una cadena encerrada entre comillas dobles que tiene caracteres,
números 12345 y algún caracter no letra como % & y = y cualquiera en principio será imprimible'
  • Dentro de un string, además de caracteres imprimibles como en el ejemplo anterior, pero también hay caracteres que tienen un significado especial, y ahí será diferente usar comillas simples y comillas dobles.
Caracteres especiales

Los siguientes caracteres son especiales, esto implica que no se imprimirán y tendrán algún tipo de efecto con los caracteres que le siguen:

Carácter Significado Ejemplo Acción
$ Sintaxis simple de interpretacion de variable $edad Se sustituirá la variable por su valor en este caso por el valor de $edad
\ Secuenca de escape El carácter que le sigue será interpretado como una secuencia de escape (ver tabla posterior)
{} Sintaxis compleja ${nota['maria']} Se realiza una doble interpretación en este caso para acceder a un elemento de un array
secuencia de escape
Caracteres especiales con \
https://www.php.net/manual/es/regexp.reference.escape.php
  • Secuencias de escape: hay caracteres no imprimibles que podemos querer representar, para ello usaremos la barra invertida \.
Secuencia de escape Significado
\’ Comillas simples
\" Comillas dobles
\\ Barra invertida
\n Nueva linea (endl)
\r Retorno
\t Tabulación Horizontal
\v Tabulación Vertical
\0 - \777 Código ascii(octal)
\x0 - \xFF Código ascii (hexadecimal)
  • Para especificar una cadena de caracteres posemos usar "", (más adelante veremos otras dos formas muy parecidas que son con el operador <<<, conocidos como heredoc y newdoc)
  • Aquí hay una gran diferencia en usar las comillas dobles "", y utilizar las comillas simples


Icon key points.gif

Comillas dobles

Interpretan los caracteres especiales
  • $ Especifico una variable por sintaxis simple
  • \ [#secuencia de escape



Icon key points.gif

Comillas simples

No interpreta los caracteres especiales, salvo
  • \'
  • \\



Funciones de salida

  • Construcciones básicas para salida de caracteres
  • En PHP,en realidad no son funciones por lo que pueden ir sin paréntesis (con o sin paréntesis):
echo
print
  • Existen otras funciones que iremos viendo según avance el curso, pero podemos probar ahora
printf
print_r
var_dump
  • Antes de continuar viendo echo, vamos a presentar los valores cadena de caracteres o string

echo

  • Es el uso más sencillo
  • Imprime una #cadena como argumentos
  • En la versión sin paréntesis , también puedes pasar una lista de argumentos.
<?php
*echo “primer argumento”, “segundo argumento”, “tercer argumento”
?>
Secuencias de escape
  • Cuando escribimos texto con echo, lo que ocurre es que se aporta ese texto al fichero html o recurso que se le va a entregar al cliente que ha solicitado el recurso.
  • Este texto, posteriormente, se interpreta y renderiza en un navegador
Etiquetas html

Si con echo escribimos una etiqueta html, esta se escribirá tal cual, y el navegador rederizará la etiqueta.




Icon activity.jpg
Ejercicio 1 : Usando echo
  • Realiza un programa donde visualices un mensaje usando la instrucción echo
  • Prueba a insetar caracteres especiales \n, \t
  • Qué diferenica hay en usar \n e insertar la etiquega
    <br/>
    , pruébalo y verifica la salida (mira el código fuelte del recurso generado.






Icon activity.jpg
Ejercicio 2 : Usando echo 2
  • Realiza un programa donde generes etiquetas html en diferente tamaño h1
  • Generaremos de forma aleatoria valores h1, h2, h3




  • En la versión sin paréntesis , también puedes pasar una lista de argumentos.
<?php
*echo “primer argumento”, “segundo argumento”, “tercer argumento”
?>

print

  • Esta sentencia es igual en uso y funcionalidad que echo
  • Tiene dos diferencias con echo
  1. Sólo puede aceptar un argumento
  2. Devuelve un valor booleano que representa si la sentencia ha tenido exito o no

printf

  • Es un función que imprime con formato (se usa igual que en java)
  • Los especificadores de formato son
  1. %s string
  2. %c carácter
  3. %d (decimal), %u(decimal sin signo) %o(octal), %x, %X (hexadecimal), %b(binario)
  4. %f, %F (Float con decimales), %e, %E (Float con notación ciétífica,
  • En su uso especificaremos el valor con el formato que queramos visualizar, en la cadena de carácteres, y después, separado por comas, los valores (o variables)a visualizar. La relación es respectiva y posicionaL



Icon activity.jpg
Ejercicio 2 : Probando printf
  • Asigna a una variable un valor real
  • Visualiza dicho valor con formato %s, %f, %F, %c, %x, %X, %b, %o
  • Prueba a especificar en número de decimales en %f
$n = 5.25251;
printf ("Valor del número con 2 decimales %.2f ", $n); //Mostrará 5.25, solo dos decimales