Что означает «->» означает / ссылается на PHP?

Что означает -> означает / ссылается на PHP?

В следующем из WordPress я знаю, что делает оператор if , например, но что делает -> делать?

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

-> обращается к члену объекта. Таким образом, $wp_query->max_num_pages получает доступ к полю max_num_pages в объекте $wp_query . Его можно использовать для доступа к методу или полю, принадлежащему объекту, и если вы знакомы с C ++ или Java, это эквивалентно myObject.myField

Во-первых, вы должны понимать следующее. В PHP и многих других языках мы имеем следующие типы entites:

  • переменные
  • Массивы
  • Объекты

-> позволяет вам получить доступ к методу или значению внутри объекта, так же, как [] позволяет вам получать доступ к значениям в массиве.

Класс похож на поле, и внутри этого поля есть много элементов, и каждый элемент может взаимодействовать друг с другом, поскольку они находятся в одном поле.

Например:

 class Box { function firstItem() { } function secondItem() { } } 

Выше мы называем класс. Это в основном структурированный фрагмент кода, который на самом деле ничего не делает, пока он не станет объектом .

Объект создается с помощью new ключевого слова, которое создает экземпляр класса и создает из него объекты.

 $box = new Box; 

Теперь указанный выше $box , который является объектом, созданным из класса Box, имеет методы внутри, такие как firstItem() .

Это как функции, кроме того, внутри них у нас есть другая переменная с именем $this и это используется для доступа к другим методам внутри этого объекта.

Теперь, чтобы получить доступ к методам извне объектов, вы должны использовать оператор, описанный в вашем вопросе.

 $box->firstItem(); 

Оператор -> позволит вам выполнить метод из $box переменной $box .

Это похоже на период (.) В JavaScript и Java. Это просто простой оператор доступа.

-> используется для доступа к методам и атрибутам объекта. См. Руководство по классам и объектам PHP .

Он обращается к члену объекта слева с именем справа.

Он обращается к члену объекта; $ obj-> prop получает доступ к свойству «prop» любого объекта в переменной $ obj.

Во многих других языках программирования для этой цели используется период: obj.prop или obj.method ().

Это то, как PHP обрабатывает объекты. По сути, $wp_query – это объект, который имеет методы (функции) и атрибуты, к которым можно получить доступ через символы -> .

PHP не начинался с объектов, поэтому вы видите его теперь как своего рода запоздалая мысль. Я нахожу -> быть грязным способом справиться с этим, по сравнению с Ruby, который был построен с объектами из фонда.

Вы можете найти более подробную информацию: http://php.net/manual/en/language.oop5.php

Это очень просто понять.

В PHP мы используем -> для доступа к методу / свойству, определенному внутри класса.

Итак, в вашем случае ($ wp_query-> max_num_pages) вы пытаетесь получить значение max_num_pages, которое является переменной класса $ wp_query.

$ wp_query, определяющая текущий запрос, а затем $ wp_query определяет, к какому типу запроса он имеет дело (возможно, к архиву категории, датированному архиву, фиду или поиску) и извлекает запрошенные сообщения. Он сохраняет много информации о запросе, который можно вытащить позже.

 <?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. Кроме того, мы также не можем вызывать переменную имени, которая задана как частное свойство.

-> в основном используется для доступа к элементу объекта. Аналогично атрибутам в Java.

например.

 class Student { String name; int rollno; } 

Student.name обращается к имени данного объекта-объекта.

Используйте -> для доступа к полям, методам в объекте, параллельным [] в переменных массива ( $array['field']$object->field ). В WP вы будете использовать его в $post например, поскольку это объект.

$object->property используется для доступа к свойству любого объекта.