Secciones

Abstract Class Phalcon\Paginator\Adapter\AbstractAdapter

Código fuente en GitHub

Namespace Phalcon\Paginator\Adapter   Uses Phalcon\Paginator\Exception, Phalcon\Paginator\Repository, Phalcon\Paginator\RepositoryInterface   Implements AdapterInterface

Phalcon\Paginator\Adapter\AbstractAdapter

Propiedades

/**
 * Configuration of paginator
 *
 * @var array
 */
protected config;

/**
 * Number of rows to show in the paginator. By default is null
 *
 * @var int|null
 */
protected limitRows;

/**
 * Current page in paginate
 *
 * @var int|null
 */
protected page;

/**
 * Repository for pagination
 *
 * @var RepositoryInterface
 */
protected repository;

Métodos

public function __construct( array $config );

Constructor Phalcon\Paginator\Adapter\AbstractAdapter

public function getLimit(): int;

Obtener el límite actual de filas

public function setCurrentPage( int $page ): AdapterInterface;

Establece el número de página actual

public function setLimit( int $limit ): AdapterInterface;

Establece el límite de filas actual

public function setRepository( RepositoryInterface $repository ): AdapterInterface;

Establece el repositorio actual para la paginación

protected function getRepository( array $properties = null ): RepositoryInterface;

Obtiene el repositorio actual para la paginación

Interface Phalcon\Paginator\Adapter\AdapterInterface

Código fuente en GitHub

Namespace Phalcon\Paginator\Adapter   Uses Phalcon\Paginator\RepositoryInterface

Phalcon\Paginator\AdapterInterface

Interfaz para adaptadores Phalcon\Paginator

Métodos

public function getLimit(): int;

Obtener el límite actual de filas

public function paginate(): RepositoryInterface;

Devuelve un segmento del conjunto de resultados para mostrar en la paginación

public function setCurrentPage( int $page );

Establece el número de página actual

public function setLimit( int $limit );

Establece el límite de filas actual

Class Phalcon\Paginator\Adapter\Model

Código fuente en GitHub

Namespace Phalcon\Paginator\Adapter   Uses Phalcon\Mvc\ModelInterface, Phalcon\Mvc\Model\ResultsetInterface, Phalcon\Paginator\Exception, Phalcon\Paginator\RepositoryInterface   Extends AbstractAdapter

Phalcon\Paginator\Adapter\Model

This adapter allows to paginate data using a Phalcon\Mvc\Model resultset as a base.

use Phalcon\Paginator\Adapter\Model;

$paginator = new Model(
    [
        "model" => Robots::class,
        "limit" => 25,
        "page"  => $currentPage,
    ]
);


$paginator = new Model(
    [
        "model" => Robots::class,
        "parameters" => [
             "columns" => "id, name"
        ],
        "limit" => 12,
        "page"  => $currentPage,
    ]
);


$paginator = new Model(
    [
        "model" => Robots::class,
        "parameters" => [
             "type = :type:",
             "bind" => [
                 "type" => "mechanical"
             ],
             "order" => "name"
        ],
        "limit" => 16,
        "page"  => $currentPage,
    ]
);

$paginator = new Model(
    [
        "model" => Robots::class,
        "parameters" => "(id % 2) = 0",
        "limit" => 8,
        "page"  => $currentPage,
    ]
);


$paginator = new Model(
    [
        "model" => Robots::class,
        "parameters" => [ "(id % 2) = 0" ],
        "limit" => 8,
        "page"  => $currentPage,
    ]
);

$paginate = $paginator->paginate();

Métodos

public function paginate(): RepositoryInterface;

Devuelve un segmento del conjunto de resultados para mostrar en la paginación

Class Phalcon\Paginator\Adapter\NativeArray

Código fuente en GitHub

Namespace Phalcon\Paginator\Adapter   Uses Phalcon\Paginator\Exception, Phalcon\Paginator\RepositoryInterface   Extends AbstractAdapter

Phalcon\Paginator\Adapter\NativeArray

Paginación usando un vector PHP como origen de datos

use Phalcon\Paginator\Adapter\NativeArray;

$paginator = new NativeArray(
    [
        "data"  => [
            ["id" => 1, "name" => "Artichoke"],
            ["id" => 2, "name" => "Carrots"],
            ["id" => 3, "name" => "Beet"],
            ["id" => 4, "name" => "Lettuce"],
            ["id" => 5, "name" => ""],
        ],
        "limit" => 2,
        "page"  => $currentPage,
    ]
);

Métodos

public function paginate(): RepositoryInterface;

Devuelve un segmento del conjunto de resultados para mostrar en la paginación

Class Phalcon\Paginator\Adapter\QueryBuilder

Código fuente en GitHub

Namespace Phalcon\Paginator\Adapter   Uses Phalcon\Db\Enum, Phalcon\Mvc\Model\Query\Builder, Phalcon\Paginator\RepositoryInterface, Phalcon\Paginator\Exception   Extends AbstractAdapter

Phalcon\Paginator\Adapter\QueryBuilder

Paginación usando un constructor de consultas PHQL como origen de datos

use Phalcon\Paginator\Adapter\QueryBuilder;

$builder = $this->modelsManager->createBuilder()
                ->columns("id, name")
                ->from(Robots::class)
                ->orderBy("name");

$paginator = new QueryBuilder(
    [
        "builder" => $builder,
        "limit"   => 20,
        "page"    => 1,
    ]
);

Propiedades

/**
 * Paginator's data
 *
 * @var Builder
 */
protected builder;

/**
 * Columns for count query if builder has having
 *
 * @var array|string
 */
protected columns;

Métodos

public function __construct( array $config );

Phalcon\Paginator\Adapter\QueryBuilder

public function getCurrentPage(): int;

Obtiene el número de página actual

public function getQueryBuilder(): Builder;

Obtiene el objeto constructor de consultas

public function paginate(): RepositoryInterface;

Devuelve un segmento del conjunto de resultados para mostrar en la paginación

public function setQueryBuilder( Builder $builder ): QueryBuilder;

Establece el objeto constructor de consultas

Class Phalcon\Paginator\Exception

Código fuente en GitHub

Namespace Phalcon\Paginator   Extends \Exception

Phalcon\Paginator\Exception

Las excepciones lanzadas en Phalcon\Paginator usarán esta clase

Class Phalcon\Paginator\PaginatorFactory

Código fuente en GitHub

Namespace Phalcon\Paginator   Uses Phalcon\Paginator\Adapter\AdapterInterface, Phalcon\Factory\AbstractFactory   Extends AbstractFactory

Este fichero es parte del Framework Phalcon.

(c) Phalcon Team [email protected]

Para obtener toda la información sobre derechos de autor y licencias, por favor vea el archivo LICENSE.txt que se distribuyó con este código fuente.

Métodos

public function __construct( array $services = [] );

Constructor AdapterFactory.

public function load( mixed $config ): AdapterInterface;

Factoría para crear una instancia desde un objeto Config

use Phalcon\Paginator\PaginatorFactory;

$builder = $this
     ->modelsManager
     ->createBuilder()
     ->columns("id, name")
     ->from(Robots::class)
     ->orderBy("name");

$options = [
    "builder" => $builder,
    "limit"   => 20,
    "page"    => 1,
    "adapter" => "queryBuilder",
];

$paginator = (new PaginatorFactory())->load($options);
public function newInstance( string $name, array $options = [] ): AdapterInterface;

Crea una nueva instancia del adaptador

protected function getExceptionClass(): string;
protected function getServices(): array;

Devuelve los adaptadores disponibles

Class Phalcon\Paginator\Repository

Código fuente en GitHub

Namespace Phalcon\Paginator   Uses JsonSerializable   Implements RepositoryInterface, JsonSerializable

Phalcon\Paginator\Repository

Repositorio del estado actual Phalcon\Paginator\AdapterInterface::paginate()

Propiedades

/**
 * @var array
 */
protected aliases;

/**
 * @var array
 */
protected properties;

Métodos

public function __get( string $property ): mixed | null;

{@inheritdoc}

public function getAliases(): array;

{@inheritdoc}

public function getCurrent(): int;

{@inheritdoc}

public function getFirst(): int;

{@inheritdoc}

public function getItems(): mixed;

{@inheritdoc}

public function getLast(): int;

{@inheritdoc}

public function getLimit(): int;

{@inheritdoc}

public function getNext(): int;

{@inheritdoc}

public function getPrevious(): int;

{@inheritdoc}

public function getTotalItems(): int;

{@inheritdoc}

public function jsonSerialize(): array;

Ver jsonSerialize

public function setAliases( array $aliases ): RepositoryInterface;

{@inheritdoc}

public function setProperties( array $properties ): RepositoryInterface;

{@inheritdoc}

protected function getProperty( string $property, mixed $defaultValue = null ): mixed;

Obtiene el valor de la propiedad por nombre

protected function getRealNameProperty( string $property ): string;

Resuelve el alias del nombre de propiedad

Interface Phalcon\Paginator\RepositoryInterface

Código fuente en GitHub

Namespace Phalcon\Paginator

Phalcon\Paginator\RepositoryInterface

Interfaz para el repositorio del estado actual Phalcon\Paginator\AdapterInterface::paginate()

Constantes

const PROPERTY_CURRENT_PAGE = current;
const PROPERTY_FIRST_PAGE = first;
const PROPERTY_ITEMS = items;
const PROPERTY_LAST_PAGE = last;
const PROPERTY_LIMIT = limit;
const PROPERTY_NEXT_PAGE = next;
const PROPERTY_PREVIOUS_PAGE = previous;
const PROPERTY_TOTAL_ITEMS = total_items;

Métodos

public function getAliases(): array;

Obtiene los alias del repositorio de propiedades

public function getCurrent(): int;

Obtiene el número de la página actual

public function getFirst(): int;

Obtiene el número de la primera página

public function getItems(): mixed;

Obtiene los elementos de la página actual

public function getLast(): int;

Obtiene el número de la última página

public function getLimit(): int;

Obtiene el límite actual de filas

public function getNext(): int;

Obtiene el número de la siguiente página

public function getPrevious(): int;

Obtiene el número de la página anterior

public function getTotalItems(): int;

Obtiene el número total de elementos

public function setAliases( array $aliases ): RepositoryInterface;

Establece los alias del repositorio de propiedades

public function setProperties( array $properties ): RepositoryInterface;

Establece valores para las propiedades del repositorio