什么是“ - >”是/在PHP中引用?

时间:2010-12-21 18:24:34

标签: php wordpress oop class syntax

PHP中->的含义是什么意思?

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

<?php if ( $wp_query->max_num_pages > 1 ) : ?>   

12 个答案:

答案 0 :(得分:30)

->访问对象的成员。因此,$wp_query->max_num_pages正在访问对象max_num_pages中的字段$wp_query。它可用于访问属于对象的方法或字段,如果您熟悉C ++或Java,则它等同于myObject.myField

答案 1 :(得分:25)

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

  • 变量
  • 阵列
  • 物件

->允许您访问对象中的方法或值,就像[]允许您访问数组中的值一样。

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

例如:

class Box
{
    function firstItem()
    {

    }


    function secondItem()
    {

    }
}

以上是我们所说的课程。它基本上是一段结构化的代码,在它成为对象之前,它并没有真正做任何事情。

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

$box = new Box;

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

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

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

$box->firstItem();

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

答案 2 :(得分:5)

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

答案 3 :(得分:4)

- &GT;用于访问对象的方法和属性。请参阅PHP manual on classes and objects

答案 4 :(得分:3)

它访问左侧对象的成员,并在右侧显示名称。

答案 5 :(得分:3)

它访问对象的成员; $ obj-&gt; prop访问$ obj变量中任何对象的“prop”属性。

在许多其他编程语言中,为此目的使用句点:例如obj.prop或obj.method()。

答案 6 :(得分:2)

这是PHP处理对象的方式。本质上,$wp_query是一个对象,它具有可以通过->字符访问的方法(函数)和属性。

PHP并没有从对象开始,因此您现在将其视为事后想法。我发现->是处理它的一种混乱方式,而Ruby则是用基础中的对象构建的。

您可以在http://php.net/manual/en/language.oop5.php

找到更多信息

答案 7 :(得分:1)

这很容易理解。

在PHP中我们使用 - &gt;访问类中定义的方法/属性。

所以在您的情况下($ wp_query-&gt; max_num_pages),您正在尝试获取max_num_pages的值,这是$ wp_query类的变量。

$ wp_query定义当前请求的对象信息,然后$ wp_query确定它正在处理的查询类型(可能是类别存档,日期存档,提要或搜索),并获取所请求的帖子。它保留了很多关于请求的信息,可以在以后提取。

答案 8 :(得分:0)

<?php
class Main{
 private $name = 'My Name is Febri.<br/>';
 private function print_name(){
  echo $this -> name;
 }
}

class Descend extends Main{
 function print(){
  $this -> print_name();
 }
}

$try = new Descend;
$try -> print();
echo $try -> name;
?>

从上面的例子中,我们不能调用私有print_name方法的函数。另外,我们也不能调用设置为私有属性的name变量。

答案 9 :(得分:0)

->主要用于访问对象的字段。类似于Java中的属性。

例如。

class Student {
String name;
int rollno;
}

Student.name访问给定学生对象的名称。

答案 10 :(得分:0)

使用->访问对象中的字段和方法,它与数组变量中的[]并行($array['field']$object->field)。在WP中,您将在$post上使用它,例如,因为它是一个对象。

答案 11 :(得分:0)

$object->property用于访问任何对象的属性。