如何将参数作为局部变量传递给方法
这可能是一个非常愚蠢的问题,但是如何将一个参数作为局部变量传递给PHP类。如何将参数作为局部变量传递给方法
如(这不起作用,而是代表我想要的)
public function sql($this->sql_statement){
// do something
}
我想传递的参数成为“$这个 - > sql_statement”变量
很显然,我可以只做到这一点,但我想知道是否有更好的方法:
public function sql($statement){
$this->sql_statement = $statement;
// do something
}
据我所知,没有更好的办法。由于你的方法可能是从类外部调用的,所以你基本上需要将它作为一个标准的setter方法:将成员变量设置为传入参数的值,就像在第二个代码中一样。
感谢您的回应,这是非常恼人的,因为它不是很整洁的代码!哦,如果这是唯一的方法。 – 2012-03-16 13:13:55
@BenCarey Au contraire,我认为这段代码很整洁。但是后来我得到了很多Java背景,这正是你应该如何做到的。 – 2012-03-16 13:17:19
这非常令人欣慰,如果我要写代码,那么我需要一些支持! :-) – 2012-03-16 13:19:20
您确实需要$ sql_statement作为对象属性($ this-> sql_statement)吗?或者您是否需要它作为该方法中的局部变量(这就是您的问题所暗示的)? – liquorvicar 2012-03-16 13:23:32
@liquorvicar $ sql_statement变量在整个类中使用,所以它肯定需要是对象属性 – 2012-03-16 13:32:19
很酷,听起来很好。我只是检查,因为问题不是100%清楚;-) – liquorvicar 2012-03-16 13:35:42