#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. Хорошо, спасибо за быстрый ответ. Теперь это имеет смысл. Примет ваш ответ.