<?php
class A implements ArrayAccess {
private $potato = 'haha';
public function offsetExists($offset){}
public function offsetGet($offset){}
public function offsetSet ($offset, $value){}
public function offsetUnset ($offset){}
}
var_dump((array) new A());
Deprecated: Return type of A::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/OTFXt on line 5
Deprecated: Return type of A::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/OTFXt on line 6
Deprecated: Return type of A::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/OTFXt on line 7
Deprecated: Return type of A::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/OTFXt on line 8
array(1) {
[" A potato"]=>
string(4) "haha"
}