cos*_*ari 1 php oop parameters performance instance-variables
我很好奇得到一个OOP问题的答案,但到目前为止找不到任何信息.
在这里,编写类和方法是为每个方法传递参数或使用实例/字段变量和$ this-> x更快;
哪个在运行时会更快?
class ExampleByParameter(){
function SomeMethod($a,$b){
echo $a." ".$b;
return;
}
}
Run Code Online (Sandbox Code Playgroud)
要么
class ExampleByInstance(){
function __construct($a,$b){
$this->a=$a;
$this->b=$b;
}
function SomeMehtod(){
$a=$this->a;
$b=$this->b;
echo $a." ".$b;
return;
}
}
Run Code Online (Sandbox Code Playgroud)
我想他们与上面的例子没什么区别,但我认为可能与更复杂的代码有显着差异.
性能差异可以忽略不计.您应该确定哪种模式最适合您的类结构.
您的班级是否依赖$a并且$b正常运作?把它们放在构造函数中.
是否SomeMethod公开?它提供的变量是否超出它返回的范围?如果是这样,请将它们作为参数.
在大型项目中,您将从准确的班级设计中获得更多收益,而不是可忽略的性能改进.
| 归档时间: |
|
| 查看次数: |
412 次 |
| 最近记录: |