-6

可能重复:
参考 - 这个符号在 PHP 中是什么意思?

因此,我一直在阅读David Powers所著的PHP Solutions, Dynamic Web Design Made Easy一书。我通读了关于面向对象的 PHP 的简短部分,我很难理解 -> 运算符的概念。任何人都可以尝试给我一个关于 OOP PHP 中的 -> 运算符的可靠解释吗?

例子:

$westcost = new DateTimeZone('America/Los_Angeles');
$now->setTimezone($westcoast);

另外,一个更一般的例子:

$someObject->propertyName
4

3 回答 3

0

PHP 中的->运算符指的是类中的函数或变量。

<?php
    class Example {
        public $variableInClass = "stringContent";
        public function functionInClass() {
            return "functionReturn";
        }
    }

    $example = new Example();
    var_dump($example->variableInClass); //stringContent
    var_dump($example->functionInClass()); //functionReturn
?>

请注意,如果我们谈论的是静态类(不同的目的),请::改用:

<?php
    class Example {
        public static $variableInClass = "stringContent";
        public static function functionInClass() {
            return "functionReturn";
        }
    }

    var_dump($example::$variableInClass); //stringContent
    var_dump($example::functionInClass()); //functionReturn
?>
于 2012-09-16T15:36:24.387 回答
0

$someObject->propertyName可以读作:

对象 $someObject返回存储在 propertyName 中的值

$someObject->methodName()可以读作:

对象 $someObject执行 methodName

于 2012-09-16T15:40:57.220 回答
-1

类和对象 101:

一个类是这样定义的:

class MyClass {

   public $value1;

   public function getValue() {

       return $this->value;

   }

}

我们现在定义了一个具有单个属性和单个函数的类。要使用这些,我们需要创建此对象的“实例”:

$myObject = new MyClass();

要使用属性或函数,我们使用->运算符:

echo $myObject->value1;
echo $myObject->getValue();

稍微抽象一点..函数getValue在这个对象中定义。通过->在我们的类的实例上使用运算符,PHP 所做的实际上只是调用该函数,就像任何其他函数一样......但在它被调用之前$this被分配给当前对象。

如果没有,希望这会有所帮助。我只是推荐阅读有关 OOP 基础知识的内容。

于 2012-09-16T15:36:16.807 回答