<?php
class A {}
trait ArrayAccessor {
public function offsetSet($offset, $data) {}
public function offsetGet($offset) {}
public function offsetUnset($offset) {}
public function offsetExists($offset) {}
}
$test = new extends A implements ArrayAccess { use ArrayAccessor; }(["hello", "world"]);
var_dump($test,
$test instanceof ArrayAccess,
$test instanceof A,
class_uses($test));
?>