亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

php __set能用于多維數組嗎

PHP
小樊
81
2024-11-29 20:21:58
欄目: 編程語言

是的,__set魔術方法在PHP中可以用于多維數組。當你嘗試為一個多維數組的元素賦值時,__set方法會被觸發。這里有一個例子來說明如何使用__set處理多維數組:

class MyArray {
    private $array;

    public function __construct() {
        $this->array = array();
    }

    public function __set($name, $value) {
        $keys = explode('->', $name);
        $target = &$this->array;

        foreach ($keys as $key) {
            if (!isset($target[$key])) {
                $target[$key] = array();
            }
            $target = &$target[$key];
        }

        $target = $value;
    }

    public function __get($name) {
        $keys = explode('->', $name);
        $target = $this->array;

        foreach ($keys as $key) {
            if (!isset($target[$key])) {
                return null;
            }
            $target = $target[$key];
        }

        return $target;
    }
}

$myArray = new MyArray();
$myArray->user->name = 'John Doe';
$myArray->user->age = 30;
$myArray->user->address->city = 'New York';

echo $myArray->user->name; // 輸出: John Doe
echo $myArray->user->age; // 輸出: 30
echo $myArray->user->address->city; // 輸出: New York

在這個例子中,我們創建了一個名為MyArray的類,它使用__set方法來處理多維數組的賦值。當我們嘗試為$myArray->user->name$myArray->user->age$myArray->user->address->city賦值時,__set方法會將值存儲在相應的多維數組中。

0
蓝田县| 江城| 丁青县| 永兴县| 巨鹿县| 龙州县| 安宁市| 白朗县| 贵溪市| 通化市| 峨眉山市| 鄄城县| 石林| 唐河县| 沾益县| 平潭县| 拉萨市| 广灵县| 绍兴市| 隆安县| 普格县| 南木林县| 永康市| 宜阳县| 鄢陵县| 上饶县| 恩施市| 石台县| 铁岭市| 花莲市| 会宁县| 英超| 和硕县| 武鸣县| 梅河口市| 黄浦区| 汉阴县| 浦北县| 西贡区| 长泰县| 犍为县|