Ich möchte sehen, ob es eine vereinfachte Möglichkeit gibt, eine if
-Anweisung zu machen, die mehrere Bedingungen prüft, wo sie Daten aus derselben Funktion verwendet.Definieren und überprüfen Sie die Variable in if-Anweisung
if($class->function($id) && $class->function($id)['key'] > 0)
{
//Do something...
}
Das Problem hier sind wir machen 2 Datenbankaufrufe, die die gleichen Daten abrufen. Eine offensichtliche Lösung ist dabei die folgende:
$classVariable = $class->function($id);
if($classVariable && $classVariable['key'] > 0)
{
//Do something...
}
Meine Frage spezifisch ist, kann ich den gleichen Effekt erzielen alle innerhalb der if
Aussage? Zum Beispiel (das wird nicht funktionieren):
if($classVariable = $class->function($id) && $classVariable['key'] > 0
{
//Do something...
}
Ist das möglich, und gibt es eine bevorzugte Möglichkeit, dies zu tun? Es scheint mir, dass das Definieren und Verwenden desselben in der gleichen Anweisung sauberer Code wäre ...
Verwendung zeigen '() 'um die Aufgabe und es wird gut funktionieren. –
Es sollte angemerkt werden, dass, während Sie es auf diese Weise tun können, es nicht der empfohlene Weg ist. Sie sollten die Variable vor der if-Anweisung deklarieren. Aber es ist dein Code und du kannst es gerne tun, wie du willst :) – Kenyon
Das funktioniert. Weiß jemand, ob es eine Präferenz gibt zwischen der Definition zuerst, dann der 'if' Anweisung oder der Definition innerhalb der' if' Anweisung? Edit: Kenyon geschrieben, während ich fragte. Vielen Dank! :) –