【ArrayAccess::offsetSet() 用法及示例】
ArrayAccess::offsetSet() 是一個用於實現 ArrayAccess 介面的方法,它被用來設定指定偏移量的值。
用法:
void ArrayAccess::offsetSet ( mixed $offset , mixed $value )
引數:
$offset
:設定的偏移量。$value
:要設定的值。
示例:
class MyArray implements ArrayAccess {
private $container = [];
public function offsetSet($offset, $value) {
$this->container[$offset] = $value;
}
public function offsetExists($offset) {
return isset($this->container[$offset]);
}
public function offsetUnset($offset) {
unset($this->container[$offset]);
}
public function offsetGet($offset) {
return $this->container[$offset];
}
}
$myArray = new MyArray();
$myArray['key'] = 'value'; // 使用 ArrayAccess::offsetSet() 方法設定偏移量的值
echo '<pre>';
var_dump($myArray);
echo '</pre>';
輸出結果:
object(MyArray)#1 (1) {
["container":"MyArray":private]=>
array(1) {
["key"]=>
string(5) "value"
}
}
以上示例中,我們建立了一個自定義的類 MyArray,並實現了 ArrayAccess 介面中的 offsetSet 方法。在該方法內部,我們將給定的偏移量和值儲存在物件的 container 屬性陣列中。然後,我們例項化 MyArray 類,透過使用 ArrayAccess::offsetSet() 方法設定偏移量的值。最後,透過列印物件的 container 屬性,我們可以看到成功地設定了偏移量 'key' 的值'value'。