来自Java背景,我发现这很奇怪.请看一下这段代码 -
<?php
class People {
private $name;
private $age;
public function set_info($name, $age) {
$this->name = $name;
$this->age = $age;
}
public function get_info() {
echo "Name : {$this->name}<br />";
echo "Age : {$this->age}<br />";
}
}
$p1 = new People();
$p1->set_info("Sam",22);
$p1->get_info();
$p1->ID = 12057;
echo "<pre>".print_r($p1,true)."</pre>";
?>
Run Code Online (Sandbox Code Playgroud)
输出:
People Object
(
[name:People:private] => Sam
[age:People:private] => 22
[ID] => 12057
)
Run Code Online (Sandbox Code Playgroud)
没有ID在People类中创建任何属性,但我可以ID使用在类外部分配值p1.
在Java中,这会产生错误 -
找不到标志
这是PHP中的一个功能吗?如果它是什么叫它?它有什么好处?