Variables
no hay que definir tipo
El tipo dependerá del valor asignado
- tipos básicos
- entero
- cadena
- real o coma flotante
- Booleano
- NULL un tipo especial que solo tiene ese valor
- tipos complejos
- objetos
- matrices
- recursos
identificador
Puntos clave
$(a..zA..Z_)(ascii-127..255)*
|
<?php
$miVariable= 8;/*Variable de tipo entero*/
edad = 5/*Error en el identificador*/
$5edad = 5 /*Error en el identificador */
?>
- El lenguaje es sensible a mayúsculas y minúsculas
- En los identificadores de variables
- No lo es en nombres de funciones
- No lo es en palabras reservadas (if, then, else,...)
Comentarios
Son ignorados por el intérprete
<?php
/*
Este código no hace nada pero muestra
la sintaxis de los comentarios
como este que ocupa varias líneas tipo lenguaje C o Java
*/
$miVariable= 8;// Esta parte de la línea se ignorará
$miVariable+= 8;# y esta parte de línea tambien
echo "Valor de la variable $miVariable";
//Este es otro comentario de una sola línea
- Este es otro modo de hacer comentarios tipo script de linux
?>
Este código nos visualizará
Valor de la variable 16
Valor de variable
- Una variable le asigno un valor en cualquier momento
- El tipo de la variable depende del valor que tiene
- función isset comprueba que una variable tenga valor
<?php
/*
$VariableValor= 5;
print ("El valor de la variable es $VariableValor");
print ("El valor de otra variable es $OtraVariableValor");
if (isset($VariableValor))
print ("VariableValor tiene valor asignado");
else
print ("VariableValor no no tiene valor asignado");
if (isset($OtraVariableValor))
print ("OtraVariableValor tiene valor asignado");
else
print ("OtraVariableValor no no tiene valor asignado");
?>
Variables entera
- Posible notación decimal/octal/hexadecimal
- Decimal
- Octal
- Hexadecimal
- Al imprimirlos con print los veré con valor decimal
- Para verlos en otras base hay que usar printf o format
Variables reales
Variables booleanas
- Interpretar otros tipos como booleanos
NULL
Cadenas
- Comillas dobles ""
- Comillas sencillas ''
Funciones de salida
Construcciones básicas para salida de caracrteres
No son funciones (con o sin paréntesis)
echo
Es el uso más sencillo
Imprime una cadena como argumentos
En la versión si paréntesis también puedes pasar una lista de argumentos.
<?php
Echo “primer argumento”, “segundo argumento”, “tercer argumeto”
?>
print
Tiene dos diferencias con echo
- Sólo puede aceptar un argumento
- Devuelve un valor que representa si la sentencia ha tenido o no éxito
Estructuras de control 1
A continuación veremos las estructuras de control
Son de tres tipos
- Selección
- Iteración
- Secuenciales
Para construirlas necesitamos operadores
- Operadores lógicos
Operadores lógicos
and
or
!
xor
&&
||
Funcionan por cortocircuito
Construyen expresiones booleanas y tras su evaluación retorna un valor booleano.
Operadores lógicos
Operadores lógicos
==
¡=
<
>
<=
>=
===
Operadores ternario
Expresión? SentenciaOKExpresion : SentenciaNoOkExpresion
Selección if
If ( condicion)
Sentencia 1;
if (condicion){
Sentencia 1
Sentencia 2
}
if (condicion)
Sentencia 1
else
Sentencia 2
if condicion:
Sentencia 1;
endif;
Seleccion else elseif
Seleccion switch
iteracion while
iteracion do-while
iteracion for
for (expression_inicial; comprobacion_terminacion;exrpesion_incremento){
sentencias;
}
Escribir un programa que visualice una tabla con las divisiones de los números que confluyen
Leer datos
- Para leer datos lo hacemos de un formulario
- el formulario lo envía el cliente
- Obligatoriamente necesitamos el atributo name de la etiqueta input
- EJ. en el emisor tenemos
Dime un número:
<FORM ACTION="tabla.php" METHOD="GET">
<INPUT TYPE="text" NAME="numero">
<INPUT TYPE="submit" VALUE="Enviar">
Al presionar el botón de enviar se envía la página al servidor
La página que especificamos en el botón action la gestiona tabla.php en este caso
En el servidor para recuperar el valor utilizaremos la tabla supergobal
una tabla es una estructura indexada por índices
leeremos el índice nombre de variable de la tabla
$_GET o $_POST dependiendo de el método de envío
Valor numérico introducido: <?php echo $_GET['numero'] ?>
iteracion while
iteracion while
BASES DE DATOS
- Para trabajar con bases de datos debemos
Normalmente también
- Realizaremos Consulta o inserciones
- Procesar información
- Cerrar la base de datos
Para realizar estas acciones disponemos de diversas funciones específicas dentro de PHP
CONECTAR AL SERVIDOR MYSQL
resource mysql_connect($hostname, $user, $password);
- Los parámetros de tipo string identificarían
- $hostname = nombre del host
- $user = usuario
- $password = contraseña
- Esta función retorna el recurso de la conexión
- FALSO si no se ha conectado
SELECCIONAR LA BASE DE DATOS
Dentro del servidor tendremos diferentes bases de datos
Antes de trabajar con una debemos seleccionarla
Si no la seleccionamos se intentará operar con la última seleccionada
bool mysql_select_db ($namedatabase, $conexion)
<?php
$conexion = mysql_connect('localhost', 'manolo', 'manolo');
if (!$conexion) {
die('No conectado : ' . mysql_error());
}
// Seleccionar alumnos como base de datos activa
$db_seleccionada = mysql_select_db('alumnos', $conexion);
if (!$db_seleccionada) {
die ('No puedo conectar con la BD alumno : ' . mysql_error());
}
?>
FUNCIONES die()- mysql_error() y concatenador .
die('texto');
Es una función que aborta la ejecución
previamente visualiza el mensaje del parámetro por pantalla
mysql_error()
visualiza el error que da el sistema por el que no ha podido conectar
.
Es un concatenador de cadenas
echo "Esto es una cadena " . "Esta es otra concatenada a la anterior"
CREAR CONSULTA
resource mysql_query ( string $consulta );
consulta es la consulta a la base de datos
<?php
$resultado = mysql_query('SELECT * from alumnos');
if (!$resultado) {
die('Invalid query: ' . mysql_error());
}
?>
PROCESAR INFORMACIÓN
Ahora ya tenemos los datos con los que queremos trabajar
los tenemos en una variable de tipo consulta
ahora debemos recorrela
La variable es como un vector de filas que hay que recorrer
array mysql_fetch_row ( resource $resultado )
esta función devuelve falso o 0 cuando ya no retorna más filas
si no retorna la siguiente fila de la consulta
la forma de acceder a cada campo será por el índice del array
array[0] .. array[n]
<?php
$resultado = mysql_query("SELECT nombre, apellido, direccion FROMM alumnos");
if (!$resultado) {
die("Could not run query: " . mysql_error();
}
$c=0;
while ($alumno=mysql_fetch_row($result)){
echo "alumno $c nombre $alumno[0] apellido $alumno[1] direccion $alumno[3]");
$c++;
?>
GESTIÓN DE BASE DE DATOS
Conocer todas las bases de datos
mysql_connect('localhost', 'mysql_user', 'mysql_password');
Todas las tablas de una base de datos
resource mysql_list_tables ( string $database [, resource $link_identifier ])
Los campos de una tabla
resource mysql_list_fields ( string $database_name , string $table_name [, resource $link_identifier])
</div>
FUNCIONES
==Definición de funiones
function ‘’’nombre_de_funcion’’’ (’’’’lista_de_parametros’’’’){
’’’’codigo a ejecutar ’’’’
}
Ejemplo de funcion
- Realiza una función que convierta de mayúsculas a minúsculas
Generar pdf desde el código php
pdf=new mPDF();
$mpdf->WriteHTML(' Hello World ');
$mpdf->Output();
|