Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么是-&燃气轮机&引用;在PHP中表示/引用?_Php_Oop_Syntax - Fatal编程技术网

什么是-&燃气轮机&引用;在PHP中表示/引用?

什么是-&燃气轮机&引用;在PHP中表示/引用?,php,oop,syntax,Php,Oop,Syntax,PHP中的->是什么意思/指什么 例如,在WordPress的以下内容中,我知道if语句的作用,但是->语句的作用是什么 <?php if ( $wp_query->max_num_pages > 1 ) : ?> 它访问左边对象的成员,右边是名称。->用于访问对象的方法和属性。请参阅。->访问对象的成员。因此$wp\u query->max\u num\u pages正在访问对象$wp\u query中的字段max\u num\u pages。它可以用来访问属

PHP中的
->
是什么意思/指什么

例如,在WordPress的以下内容中,我知道
if
语句的作用,但是
->
语句的作用是什么

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


它访问左边对象的成员,右边是名称。

->用于访问对象的方法和属性。请参阅。

->
访问对象的成员。因此
$wp\u query->max\u num\u pages
正在访问对象
$wp\u query
中的字段
max\u num\u pages
。它可以用来访问属于对象的方法或字段,如果您熟悉C++或java,它相当于MyObjult.MyField> /Cux>

< P>访问对象的成员;$$。obj->prop访问$obj变量中任何对象的“prop”属性


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

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

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

PHP并不是从对象开始的,所以您现在将其视为事后诸葛亮。我发现<代码> -> <代码>是一种处理它的杂乱方式,与Ruby相比,它是由基金会的对象构建的。p>
您可以在以下网址找到更多信息:

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

  • 变数
  • 阵列
  • 物体
->
允许您访问对象中的方法或值,就像
[]
允许您访问数组中的值一样

一个类就像一个盒子,盒子里有很多项目,每个项目都可以在同一个盒子里进行交互

例如:

class Box
{
    function firstItem()
    {

    }


    function secondItem()
    {

    }
}
以上就是我们所说的类。它基本上是一段结构化的代码,在它变成对象之前不会真正做任何事情

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

$box = new Box;
现在,上面的
$box
,它是从box类创建的对象,内部有方法,例如
firstItem()

这些函数与函数相似,除了它们之外,我们还有另一个变量叫做
$this
,用于访问该对象中的其他方法

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

$box->firstItem();
操作员
->
将允许您从变量
$box


<?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变量。

->
基本上用于访问对象的字段。类似于Java中的属性

例如

class Student {
String name;
int rollno;
}

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

这很容易理解

在PHP中,我们使用->访问类中定义的方法/属性

因此,在您的例子中($wp\u query->max\u num\u pages),您正在尝试获取max\u num\u pages的值,这是$wp\u query类的一个变量


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

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

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

谢谢。我担心会是对象和类,为什么?对象和类通常很好:)属性可能是另一个对象。不要害怕对象和类,它们是你的朋友:D@Jimmy最有趣的是,你的谷歌查询没有返回任何有用的东西。在你再次使用谷歌技能之前,你应该先学习一下谷歌技能是的,我意识到。。。但是,我们有可能绕开这条路results@Jimmy不鼓励在SO上使用LMGTFY
$object->property
$object->method()。。。属性基本上是类/对象变量,而方法是类/对象函数。“重复问题”引用指向链接到此问题的页面。亲爱的,这有点尴尬。按回车键太快。所以像
这样的东西实际上是在说:
@saltcod你可以在他们发表评论后编辑大约5分钟。这意味着,在这个对象中,
$comment
,如果该注释未被批准,请执行某些操作,否则执行完全不同的操作。你差不多都记下来了。对象很酷,因为您可以将大量有关对象的相关信息存储在方便、合乎逻辑的位置(如注释作者、注释文本、是否批准、何时保留等),因此基本上,只需命名对象并使用
->
将其指向函数,它取代了长格式的if-else语句?@saltcod它使您不用定义一堆没有实际关联的不同相关变量。这样,当你想知道某条评论的信息时,你就有了一个好地方可以看。面向对象编程是一个很大的概念,最好在这里学习。啊。好极了!再三感谢。这是一个非常简洁的句子