# Referencia del lenguaje

- La sintaxis básica
  - Etiquetas PHP
  - Escape desde HTML
  - Separación de instrucciones
  - Comentarios
- Los tipos
  - Introducción
  - Sistema de tipos
  - NULL
  - Booleano
  - Los enteros
  - Números de punto flotante
  - Cadenas
  - Strings numéricos
  - Arrays
  - Los objetos
  - Las enumeraciones
  - Recursos
  - Callables
  - Mixed
  - Void
  - Never
  - Tipos de clases relativas
  - Tipo singleton
  - Iterables
  - Declaraciones de tipo
  - Manipulación de tipos
- Variables
  - Conceptos básicos
  - Variables Predefinidas
  - Ámbito de las variables
  - Variables variables
  - Variables desde fuentes externas
- Constantes
  - Sintaxis
  - Constantes predefinidas
  - Constantes mágicas
- Expresiones
- Los operadores
  - Prioridad de los operadores — La prioridad de los operadores
  - Aritmética — Los operadores aritméticos
  - Incremento y decremento — Operadores de incremento y decremento
  - Asignación — Los operadores de asignación
  - Bitwise — Operadores a nivel de bits
  - Comparación — Operadores de comparación
  - Control de errores — Operador de control de errores
  - Ejecución — Operador de ejecución
  - Lógica — Los operadores lógicos
  - String — Operadores de string
  - Arrays — Operadores de arrays
  - Tipo — Operadores de tipos
  - Funcional — Operadores funcionales
- Estructuras de Control
  - Introducción
  - if
  - else
  - elseif/else if
  - Sintaxis alternativa
  - while
  - do-while
  - for
  - foreach
  - break
  - continue
  - switch
  - match
  - declare
  - return
  - require
  - include
  - require_once
  - include_once
  - goto
- Functions
  - User-defined functions
  - Function parameters and arguments
  - Returning values
  - Variable functions
  - Internal (built-in) functions
  - Anonymous functions
  - Arrow Functions
  - First class callable syntax
- Clases y objetos
  - Introducción
  - Sintaxis básica
  - Propiedades
  - Hooks de propiedad
  - Constantes de clase
  - Autocarga de clases
  - Constructores y destructores
  - Visibilidad
  - Herencia
  - El operador de resolución de ámbito (::)
  - Estático
  - Abstracción de clases
  - Interfaces
  - Traits
  - Clases anónimas
  - Sobrecarga mágica
  - Recorrido de objetos
  - Métodos mágicos
  - Palabra clave "final"
  - Clonación de objetos
  - Comparación de objetos
  - Late Static Bindings (Resolución estática en tiempo de ejecución)
  - Objetos y referencias
  - Serialización de objetos — Serializar objetos - objetos en sesión
  - Covarianza y Contravarianza
  - Objetos perezosos
  - Modificaciones en POO (Programación orientada a objetos)
- Los espacios de nombres
  - Introducción — Introducción a los espacios de nombres
  - Espacios de nombres — Definición de espacios de nombres
  - Subespacio de nombres — Declaración de un subespacio de nombres
  - Definición de varios espacios de nombres en el mismo archivo
  - Introducción — Uso de espacios de nombres: introducción
  - Espacios de nombres y lenguaje dinámico
  - Comando namespace y __NAMESPACE__ — El comando namespace y la constante __NAMESPACE__
  - Importación y alias — Uso de espacios de nombres: importación y alias
  - Global — Espacio de nombres global
  - Retorno al espacio global — Uso de espacios de nombres: retorno al espacio global para funciones y constantes
  - Reglas de resolución de nombres
  - Preguntas frecuentes — Preguntas frecuentes: lo que debe saber sobre espacios de nombres
- Enumeraciones
  - Visión general de las enumeraciones
  - Enumeraciones básicas
  - Enumeraciones respaldadas
  - Métodos de enumeración
  - Métodos estáticos de enumeración
  - Constantes de enumeración
  - Traits
  - Valores de enumeración en expresiones constantes
  - Diferencias con los objetos
  - Listado de valores
  - Serialización
  - Por qué las enumeraciones no son extensibles
  - Ejemplos
- Errores
  - Lo básico
  - Errores en PHP 7
- Las excepciones
  - Extender las Excepciones
- Fibers
- Generators
  - Resumen sobre los generadores
  - Sintaxis de un Generador
  - Comparación de los generadores con los objetos Iterator
- Atributos
  - Descripción general de atributos
  - Sintaxis de atributos
  - Lectura de atributos con la API de Reflection
  - Declaración de clases de atributos
- Las referencias
  - ¿Qué es una referencia?
  - ¿Qué hacen las referencias?
  - Lo que las referencias no son
  - Paso por referencia
  - Devolver referencias
  - Destruir una referencia
  - Identificar una referencia
- Variables predefinidas
  - Las Superglobales — Variables internas siempre disponibles, independientemente del contexto
  - $GLOBALS — Hace referencia a todas las variables disponibles en un contexto global
  - $_SERVER — Variables de servidor y de ejecución
  - $_GET — Variables la cadena de consulta
  - $_POST — Datos de formulario de solicitudes HTTP POST
  - $_FILES — Variables de subida de ficheros HTTP
  - $_REQUEST — Variables HTTP Request
  - $_SESSION — Variables de sesión
  - $_ENV — Variables de entorno
  - $_COOKIE — Cookies HTTP
  - $php_errormsg — El último mensaje de error
  - $http_response_header — Cabeceras de respuesta HTTP
  - $argc — El número de argumentos pasados a un script
  - $argv — Array de argumentos pasados al script
- Excepciones predefinidas
  - Exception
  - ErrorException
  - ClosedGeneratorException — La clase ClosedGeneratorException
  - Error
  - ArgumentCountError
  - ArithmeticError
  - AssertionError
  - DivisionByZeroError
  - CompileError
  - ParseError
  - TypeError
  - ValueError
  - UnhandledMatchError
  - FiberError
  - RequestParseBodyException
- Interfaces y clases predefinidas
  - Traversable — La interfaz Traversable
  - Iterator — La interfaz Iterator
  - IteratorAggregate — La interfaz IteratorAggregate
  - InternalIterator — La clase InternalIterator
  - Throwable
  - Countable — La interfaz Countable
  - ArrayAccess — La interfaz ArrayAccess
  - Serializable — La interfaz Serializable
  - Closure — La clase Closure
  - stdClass — La clase stdClass
  - Generator — La clase Generator
  - Fiber — La clase Fiber
  - WeakReference — La clase WeakReference
  - WeakMap — La clase WeakMap
  - Stringable — La interfaz Stringable
  - UnitEnum — La interfaz UnitEnum
  - BackedEnum — La interfaz BackedEnum
  - SensitiveParameterValue — La clase SensitiveParameterValue
  - __PHP_Incomplete_Class — La clase __PHP_Incomplete_Class
- Atributos predefinidos
  - Attribute — El atributo Attribute
  - AllowDynamicProperties — El atributo AllowDynamicProperties
  - DelayedTargetValidation — The DelayedTargetValidation attribute
  - Deprecated — El atributo Deprecated
  - NoDiscard — El atributo NoDiscard
  - Override — La clase Override
  - ReturnTypeWillChange — El atributo ReturnTypeWillChange
  - SensitiveParameter — El atributo SensitiveParameter
- Opciones y parámetros de contexto
  - Opciones de contexto de los sockets — Lista de opciones de contexto de los sockets
  - Opciones de contexto HTTP — Lista de opciones de contexto HTTP
  - Opciones de contexto FTP — Lista de opciones de contexto FTP
  - Opciones de contexto SSL — Lista de opciones de contexto SSL
  - Opciones de contexto Phar — Listado de opciones de contexto Phar
  - Contexto parámetros — Listado de parámetros de contexto
  - Opciones de contexto Zip — Listado de opciones de contexto Zip
  - Opciones de contexto Zlib — Lista de opciones de contexto Zlib
- Protocolos y Envolturas soportados
  - file:// — Acceso al sistema de ficheros local
  - http:// — Acceso a URLs HTTP(s)
  - ftp:// — Acceso a URLs FTP(s)
  - php:// — Acceso a los diversos flujos I/O
  - zlib:// — Flujos de compresión
  - data:// — Datos (RFC 2397)
  - glob:// — Encuentra nombres de ficheros que coinciden con un patrón dado
  - phar:// — Archivo PHP
  - ssh2:// — Shell seguro 2
  - rar:// — RAR
  - ogg:// — Flujos de audio
  - expect:// — Flujos de Interacción de Procesos

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open