以下内容在php中是合法的。要求在分配前声明属性
class Foo{
function setBar($bar){
$this->bar = $bar;
}
}
有没有一种方法来生成属性Foo#bar
尚未使用之前声明的通知? 我厌倦了浪费时间调试错别字。
以下内容在php中是合法的。要求在分配前声明属性
class Foo{
function setBar($bar){
$this->bar = $bar;
}
}
有没有一种方法来生成属性Foo#bar
尚未使用之前声明的通知? 我厌倦了浪费时间调试错别字。
我想这是你所追求的:
class Foo
{
function setBar($bar)
{
$this->bar = $bar;
}
public function __set($name, $value)
{
throw new Exception('Can not set property ' . $name);
}
}
$foo = new Foo();
$foo->setBar('bar');
这里会发生什么事是,当一个类属性被称为是超出范围,神奇的__get或__set被调用。在那里你可以决定如何处理这种情况。
使用一个好的IDE可以为你生成getter和setter,你所需要做的就是声明私有属性。 ZendStudio浮现在脑海中 – Ibu
@Ibu这可能是轻微的偏离主题,但是有没有可以做到这一点的免费/低成本IDE? – Sliq
@Panique是的,你可以使用Eclipse进行PHP开发,Zend基于Eclipse无论如何 – Ibu