Abstract Class Phalcon\Annotations\Adapter\AbstractAdapter
Código fuente en GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reader, Phalcon\Annotations\Exception, Phalcon\Annotations\Collection, Phalcon\Annotations\Reflection, Phalcon\Annotations\ReaderInterface |
|
Implements |
AdapterInterface |
Esta es la clase base para adaptadores Phalcon\Annotations
Propiedades
/**
* @var array
*/
protected annotations;
/**
* @var Reader
*/
protected reader;
Métodos
public function get( mixed $className ): Reflection;
Analiza o recupera todas las anotaciones encontradas en una clase
public function getMethod( string $className, string $methodName ): Collection;
Devuelve las anotaciones encontradas en un método específico
public function getMethods( string $className ): array;
Devuelve las anotaciones encontradas en todos los métodos de la clase
public function getProperties( string $className ): array;
Devuelve las anotaciones encontradas en todas las propiedades de la clase
public function getProperty( string $className, string $propertyName ): Collection;
Devuelve las anotaciones encontradas en un propiedad específica
public function getReader(): ReaderInterface;
Devuelve el lector de anotaciones
public function setReader( ReaderInterface $reader );
Establece el analizador de anotaciones
Interface Phalcon\Annotations\Adapter\AdapterInterface
Código fuente en GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reflection, Phalcon\Annotations\Collection, Phalcon\Annotations\ReaderInterface |
Esta interfaz debe ser implementada por adaptadores de Phalcon\Annotations
Métodos
public function get( string $className ): Reflection;
Analiza o recupera todas las anotaciones encontradas en una clase
public function getMethod( string $className, string $methodName ): Collection;
Devuelve las anotaciones encontradas en un método específico
public function getMethods( string $className ): array;
Devuelve las anotaciones encontradas en todos los métodos de la clase
public function getProperties( string $className ): array;
Devuelve las anotaciones encontradas en todas las propiedades de la clase
public function getProperty( string $className, string $propertyName ): Collection;
Devuelve las anotaciones encontradas en un propiedad específica
public function getReader(): ReaderInterface;
Devuelve el lector de anotaciones
public function setReader( ReaderInterface $reader );
Establece el analizador de anotaciones
Class Phalcon\Annotations\Adapter\Apcu
Código fuente en GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reflection |
|
Extends |
AbstractAdapter |
Almacena las anotaciones analizadas en APCu. Este adaptador es adecuado para producción
use Phalcon\Annotations\Adapter\Apcu;
$annotations = new Apcu();
Propiedades
/**
* @var string
*/
protected prefix = ;
/**
* @var int
*/
protected ttl = 172800;
Métodos
public function __construct( array $options = [] );
public function read( string $key ): Reflection | bool;
Lee anotaciones analizadas desde APCu
public function write( string $key, Reflection $data ): bool;
Escribe anotaciones analizadas en APCu
Class Phalcon\Annotations\Adapter\Memory
Código fuente en GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reflection |
|
Extends |
AbstractAdapter |
Almacena anotaciones analizadas en memoria. Este adaptador es el adecuado para desarrollo/pruebas
Propiedades
/**
* @var mixed
*/
protected data;
Métodos
public function read( string $key ): Reflection | bool;
Lee anotaciones analizadas desde memoria
public function write( string $key, Reflection $data ): void;
Escribe anotaciones analizadas en memoria
Class Phalcon\Annotations\Adapter\Stream
Código fuente en GitHub
Namespace |
Phalcon\Annotations\Adapter |
|
Uses |
Phalcon\Annotations\Reflection, Phalcon\Annotations\Exception, RuntimeException |
|
Extends |
AbstractAdapter |
Almacena las anotaciones analizadas en ficheros. Este adaptador es adecuado para producción
use Phalcon\Annotations\Adapter\Stream;
$annotations = new Stream(
[
"annotationsDir" => "app/cache/annotations/",
]
);
Propiedades
/**
* @var string
*/
protected annotationsDir = ./;
Métodos
public function __construct( array $options = [] );
public function read( string $key ): Reflection | bool | int;
Lee anotaciones analizadas desde ficheros
public function write( string $key, Reflection $data ): void;
Escribe anotaciones analizadas en ficheros
Class Phalcon\Annotations\Annotation
Código fuente en GitHub
Namespace |
Phalcon\Annotations |
Representa a una sola anotación dentro de una colección de anotaciones
Propiedades
/**
* Annotation Arguments
*
* @var array
*/
protected arguments;
/**
* Annotation ExprArguments
*
* @var array
*/
protected exprArguments;
/**
* Annotation Name
*
* @var string|null
*/
protected name;
Métodos
public function __construct( array $reflectionData );
Constructor Phalcon\Annotations\Annotation
public function getArgument( mixed $position ): mixed | null;
Devuelve un argumento en una posición específica
public function getArguments(): array;
Devuelve los argumentos de la expresión
public function getExprArguments(): array;
Devuelve los argumentos de la expresión sin resolver
public function getExpression( array $expr ): mixed;
Resuelve una expresión de anotación
public function getName(): null | string;
Devuelve el nombre de la anotación
public function getNamedArgument( string $name ): mixed | null;
Devuelve el argumento nombrado
public function getNamedParameter( string $name ): mixed;
Devuelve el parámetro nombrado
public function hasArgument( mixed $position ): bool;
Devuelve un argumento en una posición específica
public function numberArguments(): int;
Devuelve el número de argumentos que tiene la anotación
Class Phalcon\Annotations\AnnotationsFactory
Código fuente en GitHub
Namespace |
Phalcon\Annotations |
|
Uses |
Phalcon\Annotations\Adapter\AdapterInterface, Phalcon\Factory\AbstractFactory, Phalcon\Helper\Arr |
|
Extends |
AbstractFactory |
Fábrica para crear componentes de anotaciones
Métodos
public function __construct( array $services = [] );
Constructor AdapterFactory.
public function load( mixed $config ): mixed;
public function newInstance( string $name, array $options = [] ): AdapterInterface;
Crea una nueva instancia del adaptador
protected function getAdapters(): array;
Los adaptadores disponibles
Class Phalcon\Annotations\Collection
Código fuente en GitHub
Namespace |
Phalcon\Annotations |
|
Uses |
Countable, Iterator |
|
Implements |
Iterator, Countable |
Representa una colección de anotaciones. Esta clase permite recorrer fácilmente un grupo de anotaciones
// Traverse annotations
foreach ($classAnnotations as $annotation) {
echo "Name=", $annotation->getName(), PHP_EOL;
}
// Check if the annotations has a specific
var_dump($classAnnotations->has("Cacheable"));
// Get an specific annotation in the collection
$annotation = $classAnnotations->get("Cacheable");
Propiedades
/**
* @var array
*/
protected annotations;
/**
* @var int
*/
protected position = 0;
Métodos
public function __construct( array $reflectionData = [] );
Constructor Phalcon\Annotations\Collection
public function count(): int;
Devuelve el número de anotaciones en la colección
public function current(): Annotation | bool;
Devuelve la anotación actual en el iterador
public function get( string $name ): Annotation;
Devuelve la primera anotación que coincide con un nombre
public function getAll( string $name ): Annotation[];
Devuelve todas las anotaciones que coinciden con un nombre
public function getAnnotations(): Annotation[];
Devuelve las anotaciones internas como un vector
public function has( string $name ): bool;
Comprobar si existe una anotación en una colección
public function key(): int;
Devuelve la clave/posición actual en el iterador
public function next(): void;
Mueve el puntero de iteración interno a la siguiente posición
public function rewind(): void;
Rebobina el iterador interno
public function valid(): bool;
Verifica si la anotación actual del iterador es válida
Class Phalcon\Annotations\Exception
Código fuente en GitHub
Namespace |
Phalcon\Annotations |
|
Extends |
\Phalcon\Exception |
Clase para excepciones lanzadas por Phalcon\Annotations
Class Phalcon\Annotations\Reader
Código fuente en GitHub
Namespace |
Phalcon\Annotations |
|
Uses |
ReflectionClass |
|
Implements |
ReaderInterface |
Analiza los docblocks para devolver un vector con las anotaciones encontradas
Métodos
public function parse( string $className ): array;
Lee las anotaciones de la clase docblocks, sus métodos y/o propiedades
public static function parseDocBlock( string $docBlock, mixed $file = null, mixed $line = null ): array;
Procesa un bloque doc en bruto devolviendo las anotaciones encontradas
Interface Phalcon\Annotations\ReaderInterface
Código fuente en GitHub
Namespace |
Phalcon\Annotations |
Analiza los docblocks para devolver un vector con las anotaciones encontradas
Métodos
public function parse( string $className ): array;
Lee las anotaciones de la clase docblocks, sus métodos y/o propiedades
public static function parseDocBlock( string $docBlock, mixed $file = null, mixed $line = null ): array;
Procesa un bloque doc en bruto devolviendo las anotaciones encontradas
Class Phalcon\Annotations\Reflection
Código fuente en GitHub
Namespace |
Phalcon\Annotations |
Permite manipular la reflexión de las anotaciones en una forma Orientada a Objectos
use Phalcon\Annotations\Reader;
use Phalcon\Annotations\Reflection;
// Parse the annotations in a class
$reader = new Reader();
$parsing = $reader->parse("MyComponent");
// Create the reflection
$reflection = new Reflection($parsing);
// Get the annotations in the class docblock
$classAnnotations = $reflection->getClassAnnotations();
Propiedades
//
protected classAnnotations;
//
protected methodAnnotations;
//
protected propertyAnnotations;
/**
* @var array
*/
protected reflectionData;
Métodos
public function __construct( array $reflectionData = [] );
Constructor Phalcon\Annotations\Reflection
public function getClassAnnotations(): Collection | bool;
Devuelve las anotaciones encontradas en la clase docblock
public function getMethodsAnnotations(): Collection[] | bool;
Devuelve las anotaciones encontradas en los métodos de docblocks
public function getPropertiesAnnotations(): Collection[] | bool;
Devuelve las anotaciones encontradas en las propiedades de docblocks
public function getReflectionData(): array;
Devuelve las definiciones intermedias del análisis en bruto usadas para construir la reflexión