Конечный класс Phalcon\Registry
реализует ArrayAccess, Countable, Iterator, Traversable
Регистр — это контейнер для хранения объектов и значений в пространстве приложения. Хранение значения в регистре гарантирует, что один и тот же объект всегда доступен во всем приложении.
$registry = new \Phalcon\Registry(); // Set value $registry->something = "something"; // or $registry["something"] = "something"; // Get value $value = $registry->something; // or $value = $registry["something"]; // Check if the key exists $exists = isset($registry->something); // or $exists = isset($registry["something"]); // Unset unset($registry->something); // or unset($registry["something"]);
Помимо ArrayAccess, Phalcon\Registry также реализует интерфейсы Countable (count($registry) вернёт количество элементов в регистре), Serializable и Iterator (вы можете перебирать регистр с помощью цикла foreach). Для PHP 5.4 и выше реализован интерфейс JsonSerializable.
Phalcon\Registry очень быстрый (обычно быстрее, чем любая пользовательская реализация регистра); однако, это имеет свою цену: Phalcon\Registry — конечный класс и не может быть унаследован.
Хотя Phalcon\Registry предоставляет методы, такие как __get(), offsetGet(), count() и т. д., не рекомендуется вызывать их вручную (эти методы в основном существуют для соответствия интерфейсам, которые реализует регистр): $registry->__get(“property”) в несколько раз медленнее, чем $registry->property.
Внутренне все магические методы (и интерфейсы, кроме JsonSerializable) реализованы с использованием обработчиков объектов или аналогичных техник: это позволяет обойти относительно медленные вызовы методов.
Методы
final public __construct ()
Конструктор регистра
final public offsetExists (mixed $offset)
Проверяет, присутствует ли элемент в регистре
final public offsetGet (mixed $offset)
Возвращает индекс в регистре
final public offsetSet (mixed $offset, mixed $value)
Устанавливает элемент в регистре
final public offsetUnset (mixed $offset)
Удаляет элемент из регистра
final public count ()
Проверяет, сколько элементов находится в регистре
final public next ()
Перемещает курсор к следующей строке в регистре
final public key ()
Получает номер позиции активной строки в регистре
final public rewind ()
Перематывает курсор регистра к началу
public valid ()
Проверяет, является ли итератор допустимым
public current ()
Получает текущее значение во внутреннем итераторе
final public __set (mixed $key, mixed $value)
Устанавливает элемент в регистре
final public __get (mixed $key)
Возвращает индекс в регистре
final public __isset (mixed $key)
...
final public __unset (mixed $key)
...
© 2011–2017 Phalcon Framework Team
Licensed under the Creative Commons Attribution License 3.0.
https://docs.phalconphp.com/en/latest/api/Phalcon_Registry.html