PHP
Lenguaje PHP básico
IntroducciónSintaxis básicaTipos de datosVariablesConstantesExpresiones y operadoresEstructuras de controlFuncionesTablasBibliotecas de funciones
Introducción
PHP es un lenguaje de programación interpretado
Diseñado originalmente para la creación de páginas web dinámicas
Usado principalmente en interpretación del lado del servidor
Actualmente puede ser utilizado desde una interfaz de línea de comandos o en la creación de otros tipos de programas (aplicaciones con interfaz gráfica usando las bibliotecas Qt o GTK+)
La mayor parte de su sintaxis ha sido tomada de C, Java y Perl
Otras tecnologías de servidor: Coldfusion, JSP, PHP, ASP o
Web estática vs dinámica
Página estática compuesta por código HTML.
Cuando el archivo es requerido por el navegador, el servidor lo envía y tal cual
Todos los visitantes verán el mismo contenido.
Web estática vs dinámica
En sitio dinámico, la página se procesa en el servidor antes de ser enviada al navegador.
El archivo en php contiene código php que al ser ejecutado generará código html.
Al ejecutar el código, pueden hacerse consultas/accesos a bases de datos u otros archivoso o servicios.
El resultado final que se envía al navegador tiene extensión .php, pero es código HTML
Resultado generado para este visitante en particular
Esquema de funcionamiento
Sintaxis básica
PHP es sensible a las mayúsculas
¿Cómo se incrusta en la página web?
<?PHP ... ?>
Comentarios: como en C, /* … */ y //
Las instrucciones se separan con un ; como en C. La marca final ?> implica un ;
Sintaxis básica
Para devolver un texto: echo y print
echo: muestra una o más cadenasecho cadena1 [, cadena2…]; // no es una función
echo “Hola mundo”;echo “Hola “, “mundo”;
print: muestra una cadenaprint cadena; // no es una función
print “Hola mundo”;print “Hola “ . “mundo”;
Sintaxis básica
Ejemplo:<HTML><HEAD><TITLE>Mi primer programa en PHP</TITLE>
</HEAD>
<BODY><?PHP
echo (“<p>Hola mundo</p>”);
?>
</BODY></HTML>
Sintaxis básica
Uso de \n para generar código HTML legiblea) Sin \n
echo (“<P>Párrafo 1</P>”);echo (“<P>Párrafo 2</P>”);
<P>Párrafo 1</P><P>Párrafo 2</P>
Párrafo 1
Párrafo 2
Código PHP
Código HTML
Salida
Sintaxis básica
Uso de \n para generar código HTML legibleb) Con \n
echo (“<P>Párrafo 1</P>\n”);echo (“<P>Párrafo 2</P>\n”);
<P>Párrafo 1</P><P>Párrafo 2</P>
Párrafo 1
Párrafo 2
Código PHP
Código HTML
Salida
Sintaxis básica
Inclusión de ficheros externos:include()require()Ambos incluyen y evalúan 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 páginaEjemplo:
Sintaxis básica
<HTML><HEAD> <TITLE>Título</TITLE><?PHP
// Incluir bibliotecas de funciones
require ("$libdir/conecta.php");
require ("$libdir/fecha.php");
?>
</HEAD>
<BODY><?PHP
include ("cabecera.html");
?>
// Código HTML + PHP
. . .
<?PHP
include ("pie.html");
?>
</BODY></HTML>
Tipos de datos
PHP soporta 8 tipos de datos primitivos:boolean, integer, double, string (escalares)array, object (compuestos)resource, NULLEl tipo de una variable no se suele especificar. Se decide en tiempo de ejecución en función del contexto y puede variarFunciones de interés:La función 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()
Tipos de datos
Tipo integer (números enteros)27, -5, 0Tipo double (números reales)1.234, -5.33Tipo boolean (lógico)Valores: true, false (insensibles a las mayúsculas)El 0 y la cadena vacía tienen valor false
Tipos de datos
Tipo string:Las cadenas se encierran entre comillas simples o dobles:‘simples’: admite los caracteres de escape \’ (comilla simple) y \\ (barra). Las variables NO se expanden“dobles”: admite más caracteres de escape, como \n, \r, \t, \\, \$, \”. Los nombres de variables SÍ se expanden
$a = 9;echo ‘a vale $a’; // muestra a vale $aecho “a vale $a”; // muestra a vale 9
Variables
Las variables siempre van precedidas de un $El nombre es sensible a las mayúsculas Comienzan por letra o subrayado, seguido de letras, números o subrayadoVariables predefinidas del sistema.:
$GLOBALS, $_SERVER, $_GET, $_POST, $_COOKIES, $_FILES,$_ENV, $_REQUEST, $_SESSION
Ámbito: globales al fichero (excepto funciones) o locales a una función
Constantes
Definición de constantes:define (“CONSTANTE”, “hola”);echo CONSTANTE;
No llevan $ delanteSólo se pueden definir constantes de los tipos escalares (boolean, integer, double, string)
Expresiones y operadores
Operadores aritméticos:+, -, *, /, %, ++, --
Operador de asignación:=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 comparación:==, !=, <, >, <=, >= y otros
Operador de control de error: @. Antepuesto a una expresión, evita cualquier mensaje de error que pueda ser generado por la expresiónOperadores de cadena:
concatenación: . (punto)asignación con concatenación: .=
Operadores lógicos:and (&&), or (||), !, xor
Expresiones y operadores
Precedencia de operadores (de mayor a menor):
++, --*, /, %+,-<, <=, >, >===, !=&&||
Estructuras de control
if-elsewhiledo .. whileforforeachswitch
Estructuras de control
if-elseif (expresión1)
sentencia 1else if (expresión2)
sentencia 2...else if (expresión n)
sentencia nelse
sentencia n+1Mismo comportamiento que en C Las sentencias compuestas se encierran entre llaveselseif puede ir todo junto
Estructuras de control
whilewhile (expresión)
sentencia
Mismo comportamiento que en C
Estructuras de control
forfor (expresión1; expresión2; expresión3)
sentencia
Mismo comportamiento que en C
Estructuras de control
switchswitch (expresión){
case valor 1:sentencia 1break;
case valor 2:sentencia 2break;
…case valor n:
sentencia n break;
defaultsentencia n+1
}
Mismo comportamiento que en C, sólo que la expresión del case puede ser integer, float o string
Funciones. Declaración
Declaración de funciónes:desde PHP4 se pueden declarar antes y después del
lugar donde es llamada.
function suma ($x, $y){ // Declaracion
$s = $x + $y; return $s; // Devuelve
valor }
Funciones. Paso deparámetros
Por defecto los parámetros se pasan por valorPara pasarlos por referencia utilizamos el operador &
function incrementa (&$a){ $a = $a + 1;}
$a=1;incrementa ($a);print $a; // Muestra un 2
Funciones. Argumentos por defecto
Argumentos por defectofunction muestranombre ($titulo = "Sr."){ print "Estimado $titulo:\n";}muestranombre ();muestranombre ("Prof.");
Salida:Estimado Sr.:Estimado Prof.:
Funciones. Argumentos por defecto
Los argumentos con valores por defecto deben ser siempre los últimos:
function muestranombre ($nombre, $titulo= "Sr."){ print "Estimado $titulo $nombre:\n";}muestranombre (“Fernández”);muestranombre (“Fernández”, "Prof.");
Salida:Estimado Sr. Fernández:Estimado Prof. Fernández:
Arrays. Arrays asociativos
Un array es una variable que está compuesta de varios elementos a los que podemos acceder mediante un índice numérico o una clave.Declaración. Sintaxis:
array ([clave =>] valor, ...)
La clave puede ser una cadena o un entero no negativo.
El valor puede ser de cualquier tipo válido en PHP, incluyendo otro arrayEjemplos:
$colores = array (‘rojo’=>101, 5=>51, ‘azul’=>255);$medidas = array (10, 25, 15);
Acceso:echo $color[‘rojo’] // Muestra 101. No olvidar las comillasecho $medidas[0] // Muestra 10
El primer elemento es el 0También la clave puede ser omitida:
$matriz = array(5 => 1, 12 => 2);
Arrays. Recorrido
La estructura de control foreach permite iterar sobre arraysSintaxis:
foreach (expresión_array as $valor)sentencia
foreach (expresión_array as $clave => $valor)sentencia
Ejemplos:foreach ($color as $valor)
print “Valor: $valor<BR>\n”;foreach ($color as $clave => $valor)
print “Clave: $clave; Valor: $valor<BR>\n”;
Salida:Valor: 101Valor: 51Valor: 255Clave: rojo; Valor: 101Clave: verde; Valor: 51Clave: azul; Valor: 255
Arrays multidimensionalesUna forma muy practica de almacenar datos es mediante la
creación de arrays multidimensionales (tablas).
Un array multidimensional es simplemente un array en el que al menos uno de sus valores es, a su vez, un array. Ejemplo:
$cosas = array ( "frutas" => array ( "a" => "naranja",
"b" => "banano",
"c" => "manzana"
),
"números" => array ( 1,
2,
3,
4,
5,
Arrays hasta en la sopa
Te gusten o no, si deseas usar php, deberás familiarizarte con los arrays.
Para recuperar datos de una base de datos, obtienes un array. Si dispones un conjunto de formularios, las variables pueden manejarse en forma de array; a los autores de PHP los arrays les encantan.
Existen algunos arrays predefinidos de alcance global por lo que podemos acceder desde cualquier parte de nuestro script. Uno de ellos es $_SERVER.
Bibliotecas de funciones
Existen muchas bibliotecas de funciones en PHPAlgunos ejemplos:Funciones de manipulación de cadenasFunciones de fecha y horaFunciones de arraysFunciones de ficherosFunciones matemáticasFunciones de bases de datosFunciones de redAlgunas bibliotecas requieren la instalación de componentes adicionalesTodas las funciones de biblioteca están comentadas en la documentación de PHP
Top Related