Передача переменной с == в функции php

#php #oop #zend-framework

#php #ооп #zend-framework

Вопрос:

Я работаю над проектом, который ранее был закодирован кем-то другим в предыдущие годы.

Я пришел к коду, где это записано как

 $totalTime = $this->getTotalTime($transmissionType == "A", $log);
  

Здесь перед вызовом этой функции я нахожу $transmissionType , что ее значение равно M

теперь функция определяется как

 public function getTotalTime($AutGears = false){}
  

Теперь $transmissionType = M означает ручное

Означает, что $AutGears может быть тем же самым, а $log может не использоваться.

Но я не получаю значение M в $ AutGears. Причина, которую я нахожу, заключается в использовании == при передаче paremeter в

 $totalTime = $this->getTotalTime($transmissionType == "A", $log);
  

Я раньше не видел подобного использования ==, но не уверен, действительно ли это что-то значит? Или это ошибка типа?

Если это ничего не значит, я удалю ее, и мой код будет работать идеально.

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

Комментарии:

1. var_dump($transmissionType == "A");

2. Не знаю, почему этот вопрос отклонен, я искал его и не смог найти. Даже я думаю, что это не дублируется. Я просто забыл ввести var_dump для него. В любом случае, я сохраню это для дальнейшего использования кем-нибудь.

Ответ №1:

== возвращает логическое значение.

 $isAutomatic = $transmissionType == "A";  // true or false
$totalTime = $this->getTotalTime($isAutomatic, $log);
  

Имеет ли такой способ ее написания больше смысла …?

Комментарии:

1. Хорошо, спасибо за быстрый ответ. Теперь это имеет смысл. Примет ваш ответ.