Class Item {
public string $name = '';
public float $qual = 0;
public function __construct(array $attributes = [])
{
foreach ($attributes as $key => $value) {
$this->$key = $value;
}
}
public function __toString()
{
return "$this->qual"; // семантическая х-ня
}
}
// ...
$items = array_map(function (array $item) {
return new Item($item);
}, $items);
var_dump("$items[0]" + 100);
Но так лучше не делать.
class Items {
public array $items = [];
public function __construct(array $items = [])
{
$this->items = $items;
}
public function __invoke(int $key)
{
return $this->items[$key]['qual'] ?? null;
}
}
// ...
$items = new Items($items);
var_dump($items(0));
Но так тоже лучше не делать.
Лучше не выпендриваться и использовать встроенные средства php для доступа к переменным.