在PHP中," - >"是指/指的是什么?

sal*_*cod 34 php oop syntax wordpress class

->在PHP 中意味着/指的是什么?

在下面的WordPress中,我知道该if语句的作用,例如,但它做了-> 什么?

<?php if ( $wp_query->max_num_pages > 1 ) : ?>   
Run Code Online (Sandbox Code Playgroud)

Raf*_*ler 31

->访问对象的成员.所以$wp_query->max_num_pages访问max_num_pages对象中的字段$wp_query.它可用于访问属于对象的方法或字段,如果您熟悉C++或Java,则它相当于myObject.myField

  • @saltcod它可以帮助你定义一堆没有真正关联的不同相关变量.这样,当你想要关于评论的信息时,你就有了一个好看的地方.面向对象编程是一个很好的概念,最好在http://php.net/manual/en/language.oop5.php中学习. (2认同)

Rob*_*itt 26

首先,您应该了解以下内容.在PHP和许多其他语言中,我们有以下类型的entites:

  • 变量
  • 数组
  • 对象

->允许你的对象,即以相同的方式中访问的方法或值[]允许你数组中访问的值.

一个类就像一个盒子,在那个盒子里面有很多物品,每个物品都可以互相交互,因为它们在同一个盒子里.

例如:

class Box
{
    function firstItem()
    {

    }


    function secondItem()
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

以上就是我们所说的课程.它基本上是一个结构化的代码片段,直到它成为一个对象才真正做任何事情.

该对象是使用new关键字创建的,该关键字实例化一个类并从中创建一个对象.

$box = new Box;
Run Code Online (Sandbox Code Playgroud)

现在,上面$box是一个从Box类创建的对象,里面有方法,比如firstItem().

这些就像它们之外的函数一样,我们有另一个变量调用$this,它用于访问该对象中的其他方法.

现在要从对象外部访问方法,您必须使用问题中描述的运算符.

$box->firstItem();
Run Code Online (Sandbox Code Playgroud)

操作员->将允许您从变量执行方法$box.

  • 这是一个非常简洁的答案,也提供了一个惊人的例子,绝对帮助我完全理解发生了什么! (3认同)

dki*_*zer 6

这就像JavaScript和Java中的句点(.).它只是一个简单的访问操作员.


And*_*dge 5

->用于访问对象的方法和属性。有关类和对象的信息,请参见PHP手册