Внутрішній вказівник масиву php

Кілька разів стикався з поняттям внутрішнього вказівника масиву array(): так званий “internal pointer” в php. Найчастіше про нього згадується в php-функціях обходу масиву: next(), prev(), current(), reset(), end(). А також команди обходу результатів з БД: mysql_fetch_assoc(), mysql_fetch_array().

Наскільки я зрозумів з прочитаного, internal pointer — елемент нижчого рівня мови, частина структури HashTable.  Він пересувається ітераторами циклів та вище перечисленими командами. Також, його наявність частіше використовують для пояснення роботи функцій.

Чи впливає позиція вказівника на виконання команд я не нагуглив.

UPD. На рівні з внутрішнім вказівником існує і зовнішній вказівник. Він представляє інший алгоритм обходу масивів в php і вже є частиною структури HashPosition.

На відміну від першого методу обходу, зовнішній вказівник чутливий до видалення об’єктів масиву і останнє призводить до помилки сегментації (segmentation fault).

Залишити відповідь