Описание тега arrayaccess

Array access is class implementation that allows the class to behave as an array - this means to provide data through [] operator.
2 ответа

Параметр смещения будет установлен в NULL, если другое значение недоступно, что это значит в php?

Я учусь интерфейсу ArrayAccess для моего последнего года проекта. Я не знаю, когда параметр смещения ArrayAccess::offsetSet() установлен в NULL. Как указано в php.net. Примечание. Параметру смещения будет присвоено значение NULL, если другое значени…
08 окт '17 в 05:46
4 ответа

Как получить доступ к значениям массива внутреннего уровня в цикле foreach в следующем сценарии?

У меня следующий массив называется $data: Array ( [op] => edit [pt_id] => 4 [form_submitted] => yes [submit] => Update [pt_documents_data] => Array ( [0] => Array ( [pt_doc_title] => Test Document [pt_doc_id] => 6 [pt_doc_fil…
1 ответ

Добавление ограничения-члена к параметру встроенной функции вызывает FS0752 для доступа к массиву

Я снова и снова читал официальные документы Microsoft об ограничениях типов, но не могу понять, почему этот код не компилируется: let inline transform<'A, 'a when 'A : (member Item : int -> float)> (a: 'A) : 'a = a.[0] ошибка FS0752: операт…
27 мар '17 в 08:41
1 ответ

Синтаксическая ошибка в PHP: доступ к массиву возвращаемого значения функции

Ну, проблема в том, что я написал код, который избегает показа дублированных данных. На моей локальной машине это работает отлично, но на хосте я получаю следующую ошибку: Синтаксическая ошибка, неожиданная '[' в /home/eplus/public_html/vqmod/vqcach…
05 июл '13 в 14:10
3 ответа

Удалить элемент из Iterator в PHP

Я имею дело с классом, который реализует ArrayAccess AND Iterator (скажем, $a) и, проходя по ней с foreachЯ хотел бы удалить / сбросить некоторые элементы (на основе некоторых if условия). foreach($a as $item) { if(mustBeRemoved()) { $a->remove($…
21 окт '14 в 12:01
1 ответ

TypeError: объект 'function' является неподписанным в Python?

У меня есть массив строковых объектов с цветовыми кодами для построения графиков, который выглядит следующим образом: colors = ["ob-", "or-", "oy-", "og-", "om-", "op-"] Когда я пытаюсь получить к нему доступ с помощью цикла for (где его индекс мень…
01 дек '11 в 17:54
3 ответа

PHP ArrayAccess - многомерный массив и offsetGet со ссылкой

Я прочитал много прошлых вопросов о ArrayAccess PHP интерфейс и его метод offsetGet который может вернуть ссылку. У меня есть простой класс, реализующий этот интерфейс, который оборачивает переменную типа array, offsetGet метод возвращает ссылку, од…
24 ноя '14 в 19:11
1 ответ

Используя SplObjectStorage в качестве карты данных, можете ли вы использовать изменяемый массив в качестве данных?

В следующем коде: $storage = new \SplObjectStorage(); $fooA = new \StdClass(); $fooB = new \StdClass(); $storage[$fooA] = 1; $storage[$fooB] = array(); $storage[$fooA] = 2; $storage[$fooB][] = 'test'; Я бы ожидал $storage[$fooA] быть 1, что это тако…
21 фев '12 в 15:41
5 ответов

В C++11 и далее std::string::operator[] выполняет проверку границ?

Я много раз видел, что std::string::operator[] не выполняет проверку границ. Четный В чем разница между string:: at и string:: operator []?, спросили в 2013 году, ответы говорят, что operator[] не выполняет проверку границ. Моя проблема с этим, если…
21 июл '16 в 14:05
1 ответ

Классы PHP: интерфейс ArrayAccess - возможно ли использовать интерфейс массива непосредственно в классе?

В PHP я пытаюсь получить прямой доступ к члену класса (используя интерфейс ArrayAccess) без необходимости создания нового экземпляра. Например: class my_class implements ArrayAccess { private static $d=array(); function offsetGet($o){return self::$d…
2 ответа

PHP 5.6: ArrayAccess: функция isset вызывает offsetGet и вызывает неопределенное уведомление об индексе

Я написал простой класс PHP, который реализует интерфейс ArrayAccess: class MyArray implements ArrayAccess { public $value; public function __construct($value = null) { $this->value = $value; } public function &offsetGet($offset) { var_dump(_…
05 авг '18 в 20:14
1 ответ

Многомерный ArrayObject

Есть ли способ реализовать класс с многомерным доступом к массиву? Я хочу что-то вроде $obj = new MultiArrayObject(); $obj['key']['subkey'] = 'test'; echo $obj['key']['subkey']; //expect 'test' here
02 окт '15 в 13:32
3 ответа

Индексирование трехмерного массива с использованием одного непрерывного блока памяти

vector<bool> working_lattice(box.rect.length * box.rect.height * box.rect.width); Как я могу получить доступ working_lattice[1][5][3] используя стиль объявления выше?
4 ответа

Подсказка типа PHP для разрешения Array или ArrayAccess

Можно ли разрешить массив или объект, который реализует ArrayAccess? Например: class Config implements ArrayAccess { ... } class I_Use_A_Config { public function __construct(Array $test) ... } Я хочу быть в состоянии передать либо Array или ArrayAcc…
11 фев '13 в 05:58
0 ответов

Веточка с ArrayAcess

У меня проблема с контейнером для инъекций зависимости и веткой, я использую Illuminate/Container: // Register templates. $this->singleton('templates', function ($c) { $twig = new \Twig_Environment( new \Twig_Loader_Filesystem([$c['paths.template…
11 мар '15 в 21:42
0 ответов

ArrayAccess производительность PHP

В настоящее время я работаю над контейнером для проекта php, который кажется идеальным кандидатом для упрощения с помощью интерфейса ArrayAccess. Я чувствую, что это было бы замечательно, но единственным недостатком, который я вижу в реализации инте…
11 дек '16 в 23:31
2 ответа

Интерфейс PHP, SPL, AccessArray с интерфейсом Iterator

Я думал об интерфейсе AccessArray и интерфейсе Iterator, и я подумал, можем ли мы их объединить? Я имею в виду настройку массива с помощью AccessArray и использование цикла foreach с помощью Iterator. Если кто-то может помочь мне с примером, если во…
05 июл '12 в 18:01
2 ответа

Проблема с расширением функции ArrayObject::offsetGet() для возврата значения null, если элемент не находится в массиве

Первоначально я думал, что это будет кусок пирога.. не для меня.. Я пытаюсь расширить функцию offsetGet(), чтобы она возвращала ноль, если элемент отсутствует в ArrayObject. Пока я не могу заставить его работать без ошибок. php -v: 5.3.29 Что я дела…
28 май '15 в 08:11
2 ответа

ArrayAccess/ArrayObject не работают с такими функциями, как call_user_func_array()

При реализации объекта с использованием ArrayAccess или же ArrayObjectдля некоторых операций это совершенно нормальный массив (например, foreach() заявление). Другие, однако, не так легко одурачить и все еще жалуются, что это объект: [E_WARNING] cal…
30 окт '12 в 14:00
1 ответ

Arrayaccess, Iterator и current()

У меня есть класс, который реализует Countable, ArrayAccess, Iterator и Serializable. У меня есть общедоступная переменная $data, в виде массива. И мои итерационные реализации: public function rewind() { return reset($this->data); } public functi…
10 янв '12 в 12:12