我正在尝试将新的 readonly 属性与PHP8.1一起使用,但我无法设置我的数组值。
我的代码:
class MyModel
{
public readonly int $id;
public readonly string $text;
/** @var array<int, string> $media_keys */
public readonly array $media_keys;
public function __construct(\stdClass $object)
{
$this->id = $object->id; // OK
$this->text = $object->text; // OK
if (isset($object->attachments)) {
$this->media_keys = $object->attachments->media_keys; // KO
}
}
}
$object->attachments->media_keys
是一个像这样的简单数组:
array(1) {
[0]=> string(22) "16_1468553316770668545"
}
但这不起作用并返回["media_keys"] => uninitialized(array)