PHP функция и классы - PullRequest
       1

PHP функция и классы

1 голос
/ 29 июня 2011

может быть, это легко для большинства.Но иногда в куске кода я вижу что-то вроде этого:

public function myFunction(Class_Name $var){
  //some nice code here
}

Мой вопрос, эти параметры, что они делают и почему я хочу использовать это?:)

Ответы [ 5 ]

9 голосов
/ 29 июня 2011

Часть Class_Name является подсказкой типа .Параметр $var должен быть экземпляром этого класса (будь то new Class_Name() или экземпляр любого класса, производного от него).Вы используете его, если ожидаете, что $var будет объектом определенного типа, а не просто произвольным значением PHP.Однако подсказки типов существуют только для типов и массивов классов / интерфейсов.

3 голосов
/ 29 июня 2011

Это означает, что переменная, переданная myFunction , должна быть экземпляром Class_Name.Таким образом, вы можете избежать проверки типа переменной в теле myFunction или вызова метода $ var без уверенности, что этот метод существует.

2 голосов
/ 29 июня 2011

Параметр используется для того, что вы (или кто-то еще) используют в рамках функции / метода.

public function myFunction(Class_Name $var){
  //some nice code here
  echo $var->someProperty;
}

Если вы спрашиваете, что Class_Name about: Это подсказка типа.Это означает, что php будет выдавать ошибку каждый раз, когда вы пытаетесь установить в качестве параметра что-либо кроме объекта класса Class_Name (или дочернего класса).

1 голос
/ 29 июня 2011

Это называется typehinting и гарантирует, что переменная $ var является экземпляром Class_Name или класса, который расширяет Class_Name.На самом деле это просто утверждение.

0 голосов
/ 29 июня 2011

для функции должны быть определены аргументы, если вы хотите вернуть некоторый результат из функции .... имя_класса похоже на (int, float ... и т. Д.), Которое не обязательно должно быть определено, а $ var может быть любым именемВы хотите, чтобы ваша переменная

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...