Следующее, пожалуй, самый чистый способ сделать то, что запросил OP.Он определяет функцию, но не имеет собственных переменных, и он выполнит работу практически для любой ситуации:
function at(&$arr, &$pos) { return $arr[$pos]; }
Пример использования:
echo at( explode('|', 'a|b|c|d'), 1 ); // Outputs 'b'
Функция представляет собой одну строку кода, и ее нетрудно зафиксировать в памяти.Если вы используете его только один раз, вы можете определить его в локальной области, где он будет использоваться для минимизации помех в коде.
В качестве небольшого дополнительного преимущества, поскольку функция не проверяет $arr
или $pos
, он выдаст все те же ошибки, что и при попытке доступа к несуществующему индексу для массива, или даже вернет отдельные символы в строке или элементы в парном массиве ключ-значение.