1--TEST-- 2Bug #54367 (Use of closure causes problem in ArrayAccess) 3--FILE-- 4<?php 5class MyObject implements ArrayAccess 6{ 7 public function offsetSet($offset, $value): void { } 8 public function offsetExists($offset): bool { } 9 public function offsetUnset($offset): void { } 10 11 public function offsetGet($offset): mixed 12 { 13 return function ($var) use ($offset) { // here is the problem 14 var_dump($offset, $var); 15 }; 16 } 17} 18 19$a = new MyObject(); 20echo $a['p']('foo'); 21?> 22--EXPECT-- 23string(1) "p" 24string(3) "foo" 25