<?php
class Test implements ArrayAccess
{
public function offsetSet($offset, $value)
{
var_dump($offset);
}
public function offsetGet($offset){}
public function offsetUnset($offset){}
public function offsetExists($offset){}
}
$test = new Test();
$test[7.3982] = true;
$test[new \stdClass()] = true;
$x[7.3982] = true;
var_dump($x);
Deprecated: Return type of Test::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/dTUK7 on line 12
Deprecated: Return type of Test::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/dTUK7 on line 10
Deprecated: Return type of Test::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/dTUK7 on line 5
Deprecated: Return type of Test::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/dTUK7 on line 11
float(7.3982)
object(stdClass)#2 (0) {
}
Deprecated: Implicit conversion from float 7.3982 to int loses precision in /in/dTUK7 on line 20
array(1) {
[7]=>
bool(true)
}