使用PHP类属性

时间:2015-10-22 19:02:05

标签: php

我创建了一个名为Player的新类,其中包含2个属性:

  1. name

  2. ID

  3. 我不知道以下代码对我有何影响,这就是我问你的原因:

    <?php
    $player = new Player();
    $player->name = "Someone";
    $player->ID = 123;
    $player->color = "Red"; // Why it worked?
    echo $player->color; // Worked great too!
    ?>
    

    我可以设置一个属性color并在我甚至没有在我的类文件中声明它时使用它。怎么可能?

1 个答案:

答案 0 :(得分:3)

在PHP中,该功能称为property overloading(“重载”术语为misused!它应该类似于“解释器挂钩”,而不是)。

  

PHP中的重载提供了动态“创建”属性和方法的方法。 qoute

您可以使用动态属性,就像它们已在类定义中声明一样;像:

class A {
}

$a = new A();
$a->myProperty = 'something';