Desarrollo de aplicaciones web con PHP y MySQL
El lenguage PHP
Sergio Sáez y José Luis Poza
© 2015 Sergio Sáez y José Luis Poza

1. Contenidos

2. Identificadores y variables

Identificadores

Variables

<?php echo $valor$mensaje?>

2.1. Variables definidas por el usuario

3. Tipos

3.1. Tipos escalares

boolean
Expresan un valor de verdad o falsedad. Sus valores pueden ser true o false. Ambos valores son indiferentes a mayusculas y minusculas
<?php var_dump(TRUE); var_dump(False);
   
var_dump(TrUe); var_dump(FaLsE); ?>
bool(true) bool(false) bool(true) bool(false)
integer
Expresan valores enteros y sus valores literales pueden expresarse en base 8, 10 o 16.
<?php var_dump(013); var_dump(11);
   
var_dump(0xb); ?>
int(11) int(11) int(11)
float o coma flotante
Expresan valores reales y se aceptan los valores literales en notación de punto fijo y en notación científica.
<?php var_dump(1.5678);
   
var_dump(0.45e2); ?>
float(1.5678) float(45)
string
Forman cadenas de texto. Hay dos formas de representar los valores literales del tipo cadena:

3.2. Tipos compuestos

array
Almacenan valores escalares o compuestos, del mismo o distinto tipo, con clave numérica o alfanumérica.
<?php
  $numeros
= array(12345);
  
$cadenas= array("Hola""mundo""cruel");
  
$conjunto= array(12.3'hola', array(true1.5e-12));
  
$diccionario= array("rueda" => 145"aceite" => 24.5);
?>
object
Almacenan una referencia a la instancia de una clase.
<?php
  
class UnaClase {
    function 
un_metodo() {
      echo 
"Hace algo.";
    } 
// end un_metodo
  
// end UnaClase
  
$objeto = new UnaClase;
  
$objeto->un_metodo();
?>

3.3. Tipos especiales

resource
Almacenan una referencia a un recurso externo, v.g. un fichero abierto o una conexión con una BBDD.
<?php
$bbdd 
mysql_pconnect('localhost''webuser''webpassword');
if (!
$bbdd) {
    die(
'Imposible conectar: ' mysql_error());
}
echo 
'Conexi&oacute;n realizada';
mysql_close($bbdd);
?>
NULL
Tipo especial que representa a las variables que no tiene un valor asignado.

Se consideran de tipo NULL aquellas variables que:

3.4. Cambios de tipo

3.5. Cambio de tipo a boolean

3.6. Funciones relacionadas

int intval(mixed var);
float floatval(mixed var);
string strval(mixed var);
Convierten un valor al tipo especificado por la función.

Tiene un comportamiento similar al casting pero en algunos casos es un poco más potente (v.g. permite especificar la base).

is_array(), is_bool(), is_float(), is_int() = is_integer(), is_string(), is_object()
Devuelve true o false indicando si la variable es del tipo especificado.
var_dump()
Permite visualizar el tipo y el valor de una expresión.
string gettype(mixed var);
Devuelve una cadena con el tipo de la variable.
bool settype(mixed &var, string type);
Cambia el tipo de la variable var al especificado en la cadena type, devolviendo false si la conversión no ha sido posible.
bool isset(mixed var);
Devuelve true si la variable está definida.
void unset(mixed var);
Elimina una variable. Desde el momento de su aplicación la variable var pertenecerá a NULL.
bool empty(mixed var);
Devuelve false si una variable existe y tiene un valor no nulo y/o distinto de cero. Es lo contrario de (boolean)$var.

4. Constantes

5. Operadores

6. Estructuras de control

6.1. Estructuras de control: if-else

6.2. Estructuras de control: if-elseif

6.3. Estructuras de control: switch

6.4. Estructuras de control: while

6.5. Estructuras de control: do-while

6.6. Estructuras de control: for

6.7. Interrumpiendo el flujo de control

7. Notación alternativa

<?php
  
if () {
    ...
  } elseif () {
    ...
  } else {
    ...
  } 
// endif
?>
<?php
  
if ():
    ...
  elseif ():
    ...
  else:
    ...
  endif;
?>
<?php
  
for () {
?>
    ...
<?php
  
// endfor
?>
<?php
  
for ():
?>
    ...
<?php
  
endfor;
?>
<?php
  
while () {
?>
    ...
<?php
  
// endwhile
?>
<?php
  
while ():
?>
    ...
<?php
  
endwhile;
?>