【问题标题】:Should i use $this-> several times in a function or should i create a local variable?我应该在函数中多次使用 $this-> 还是应该创建一个局部变量?
【发布时间】:2015-06-17 08:31:55
【问题描述】:

例如,我以两种不同的方式学习此类:

class Text {
    private $Foo;

    function Bar() {
        if ($this->Foo == "Bar" || $this->Foo == "Foo") {
            return $this->Foo;
        }
    }
}


class Text {
    private $Foo;
    function Bar() {
        $Fooo = $this->Foo;
        if ($Fooo == "Bar" || $Fooo == "Foo") {
            return $Fooo;
        }
    }
}

哪种方式更好、更快、更安全?

谢谢!

【问题讨论】:

    标签: php performance security


    【解决方案1】:

    PHP performance: $this->variable versus local $variable (manipulating)

    请注意,尽管在您的示例中已经定义了类变量,所以要么删除它并使用局部变量,要么删除局部变量并使用类一。此外,如果需要其他类(您需要将其公开)或函数访问,请使用类变量。

    【讨论】:

      【解决方案2】:
      1. 使用constants 确保您将变量与什么进行比较,并且不会出现拼写错误

        const BAR = "酒吧" const FOO = "foo"

      2. 使用triple equal comparator比较值是否相等并且类型相同

        $this->Foo === BAR

      3. 您在一个类中,因此如果您需要稍后访问或在多个方法中使用它们,请坚持使用类变量。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-05-13
        • 2019-09-23
        • 1970-01-01
        • 2010-10-21
        • 1970-01-01
        • 1970-01-01
        • 2020-10-05
        相关资源
        最近更新 更多