Как заменить суперглобальные объекты объектами, которые ведут себя как массив?

Я пытаюсь написать собственный объект, который может заменить суперглобальные $_REQUEST, $_GET, $_POST а также $_COOKIE, Я пытаюсь изменить, как свойства в этих массивах доступны через функцию offsetGet и сделать некоторые записи и манипулирование данными, прежде чем данные будут возвращены тому, кто пытается получить к ним доступ.

До сих пор я пытался сделать класс, который реализует ArrayAccess, Iterator и еще один класс, который расширяется ArrayObjectОднако ни один из этих вариантов не был слишком полезным.

Особенно, когда дело доходит до того, чтобы заставить эти пользовательские суперглобальные переменные работать хорошо с функциями массива (т.е. array_map, array_key_existsЯ довольно застрял. Сигнатуры функций этих функций массива ожидают массив.
Изменение всех частей моей кодовой базы для доступа к внутреннему массиву внутри моего пользовательского объекта также не вариант в моем конкретном случае.

Есть ли другие способы достижения того, что я пытаюсь сделать? Возможно, с другим объектом или правильной реализацией ArrayAccess или же ArrayObject это будет хорошо работать с функциями массива.

-1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]