is_null()
null$var = null;
if (is_null($var)) {
echo "La variable es null";
}
empty()
"", 0, null, false, etc.)$input = "";
if (empty($input)) {
echo "Campo vacío";
}
isset()
nullif (isset($_REQUEST['nombre'])) {
echo $_REQUEST['nombre'];
}
var_dump()
var_dump($array);
date()
echo date("Y-m-d H:i:s");
nl2br()
\n) en etiquetas <br>echo nl2br("Línea 1\nLínea 2");
htmlspecialchars()
echo htmlspecialchars("<b>Hola</b>");
list()
list($a, $b) = [1, 2];
json_encode() / json_decode()
$json = json_encode(["nombre" => "Ana"]);
$array = json_decode($json, true);
file_put_contents()
file_put_contents("log.txt", "Registro de actividad");
basename()
echo basename("/ruta/archivo.txt");
header()
header("Location: pagina.php");
MySQL proporciona varios tipos de datos para representar fechas:
DATEDATETIMETIMESTAMPTIMEYEAR// Source - https://stackoverflow.com/a
// Posted by rjhdby, modified by community. See post 'Timeline' for change history
// Retrieved 2025-11-26, License - CC BY-SA 4.0
$a - variable con un valor distinto de null (e.g. TRUE)
$b - variable con valor null. `$b = null;`
$c - variable no declarada
$d - variable con valor que devuelve FALSE (ej. string vacío, FALSE o array vacío)
$e - variable declarada pero sin valor asignado
$a->a - declarada, pero no asignada propiedad object. (`public $a;`)
A::$a - declarada, pero no asignada propiedad static class.
| $a | $b | $c | $d | $e | $a->a | A::$a |
---------+-------+-------+-------+-------+-------+-------+-------+
is_null()| FALSE | TRUE |TRUE*W | FALSE | TRUE*W| TRUE | TRUE |
---------+-------+-------+-------+-------+-------+-------+-------+
isset() | TRUE | FALSE | FALSE | TRUE | FALSE | FALSE | FALSE |
---------+-------+-------+-------+-------+-------+-------+-------+
empty() | FALSE | TRUE | TRUE | TRUE | TRUE | TRUE | TRUE |
---------+-------+-------+-------+-------+-------+-------+-------+
null === | FALSE | TRUE |TRUE*W | FALSE | TRUE*W| TRUE | TRUE |
---------+-------+-------+-------+-------+-------+-------+-------+
null == | FALSE | TRUE |TRUE*W | TRUE | TRUE*W| TRUE | TRUE |
---------+-------+-------+-------+-------+-------+-------+-------+
TRUE*W - function return TRUE, but same time emits WARNING.
DateTimenew DateTime()timezone, dateformat()modify()add()diff()$fecha = new DateTime();
echo $fecha->format('Y-m-d');
PDOnew PDO($dsn, $usuario, $contraseña)query($sql) — Ejecuta una consulta SQL directamenteprepare($sql) — Prepara una consulta para ejecución seguraexec($sql) — Ejecuta una consulta sin retorno de resultadossetAttribute($clave, $valor) — Configura opciones de conexióntry {
$pdo = new PDO("mysql:host=localhost;dbname=tienda", "username", "paso");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Conexión exitosa";
} catch (PDOException $e) {
echo "Error de conexión: " . $e->getMessage();
}
PDO Statement$pdo->prepare($sql)execute([$params]) — Ejecuta la sentencia preparadafetch($modo) — Obtiene una fila del resultadofetchAll($modo) — Obtiene todas las filasbindParam($clave, $variable) — Vincula un parámetro por referenciabindValue($clave, $valor) — Vincula un valor directamenterowCount() — Devuelve el número de filas afectadascloseCursor() — Libera la conexión para nuevas consultas$pdo = new PDO("mysql:host=localhost;dbname=tienda", "user", "pass");
$sentencia = $pdo->prepare("SELECT * FROM productos WHERE categoria = :cat");
$sentencia->bindValue(":cat", "tecnologia");
$sentencia->execute();
$resultados = $sentencia->fetchAll(PDO::FETCH_ASSOC);
print_r($resultados);
PDO Exceptionmessage — Mensaje descriptivo del errorcode — Código numérico del errorfile — Archivo donde ocurrió el errorline — Línea donde ocurrió el errorgetMessage() — Devuelve el mensaje del errorgetCode() — Devuelve el código del errorgetTrace() — Devuelve el seguimiento de pilagetTraceAsString() — Devuelve el seguimiento como cadenatry {
/* Contenido */
} catch (PDOException $e) {
echo "Error de conexión: " . $e->getMessage();
}
DOMDocumentpreserveWhiteSpace — Controla espacios en blancoformatOutput — Formatea la salida para que sea legibleload($archivo) — Carga un documento XML/HTML desde archivoloadXML($cadena) — Carga un documento desde una cadenasave($archivo) — Guarda el documento en archivosaveXML() — Devuelve el XML como cadenacreateElement($nombre, $valor) — Crea un nuevo nodoappendChild($nodo) — Agrega un nodo al documento$doc = new DOMDocument();
$doc->formatOutput = true;
$raiz = $doc->createElement("tienda");
$doc->appendChild($raiz);
$producto = $doc->createElement("producto", "Ordenador");
$raiz->appendChild($producto);
echo $doc->saveXML();
| Entorno de uso | Clase | ¿Cuándo se instancia? | Utilidad | Atributos utilizados | Métodos utilizados |
|---|---|---|---|---|---|
| Al trabajar con fechas y marcas de tiempo | DateTime | new | Manejo de fechas | timezone, date | format(), modify(), setDate(), setTime() |
| Al trabajar con bases de datos MySQL del modo viejo | MySQLi | new | Manejo de comunicaciones con una base de datos MySQL | host, username, password, dbname | query(), prepare(), connect(), close() |
| Al trabajar con bases de datos modernamente | PDO | new | Manejo de comunicaciones con una base de datos relacional | DSN, usuario, contraseña | query(), prepare(), exec(), setAttribute() |
| Al recibir resultados de un query | PDOStatement | Al utilizar el método prepare() o query() en un objeto PDO | Trabajar con el conjunto de resultados de un query | Parámetros de consulta, modo de obtención | fetchObject(), fetchAll(), execute(), bindValue() |
| Al ocurrir un error del SGBD | PDOException | Al saltar una excepción de PDO en un try | Controlar excepciones producidas en una base de datos relacional | message, code | getMessage(), getCode(), getTrace() |
| Al trabajar con documentos almacenamiento de datos | DOMDocument | new | Trabajar con documentos XML/HTML de forma cómoda y global | preserveWhiteSpace, formatOutput | createElement(), load(), save(), appendChild() |
| Al definir elementos en un fichero | DOMElement | Al usar el método createElement() en un objeto DOMDocument | Definir elementos DOM para estructurar un fichero de almacenamiento | tagName, attributes | appendChild(), setAttribute() |
| Al usar el método appendChild() en un objeto DOMElement | DOMNode | Al usar el método appendChild() en un objeto DOMDocument o DOMElement | Definir cualquier nodo dentro de un documento para estructurar el fichero | nodeName, nodeValue, nodeType | appendChild(), cloneNode(), removeChild() |
| Al trabajar con ficheros XML | SimpleXMLElement | new | Trabajar cómodamente con ficheros XML | children, attributes | asXML(), xpath(), children() |