In deze les bespreken we de volgende methoden die worden gebruikt om lange if-else-codes korter en leesbaarder te maken. PHP-ternaire operatorAan de hand van voorbeelden leer je wat het is en hoe je het kunt gebruiken.

PHP-ternaire operator is een voorwaardelijke operator die de lengte van de code verkort bij het uitvoeren van vergelijkingen en voorwaarden. Deze operator is een belangrijk alternatief voor het gebruik van if-elseif-else of geneste if else. Het wordt een ternaire operator genoemd omdat er drie operanden nodig zijn.

  • PHP-ternaire operatorDe operanden die nodig zijn, zijn als volgt:
    voorwaarde
  • resultaat voor true (retourneert true als de voorwaarde waar is)
  • resultaat voor vals

PHP-ternaire operator De syntaxis is als volgt:

$variable = (condition) ? (statement1) : (statement2);

Er wordt een voorwaarde toegevoegd in plaats van een voorwaarde. Als de voorwaarde voor statement1 waar retourneert, worden de toe te voegen gegevens geschreven. Als de voorwaarde voor statement2 false retourneert, worden de toe te voegen gegevens geschreven.

PHP-ternaire operator

In ons eerste voorbeeld PHP Ternaire Operator'We zullen zien hoeveel het de if-else verklaring verkort. Als dit waar is, willen we de knopnaam "Uitloggen" maken omdat de gebruiker is ingelogd, en als de gebruiker niet is ingelogd, willen we de knopnaam "Inloggen" maken, zodat de gebruiker kan inloggen. Laten we aannemen dat de variabele is_user_logged_in de waarde true krijgt als de gebruiker is ingelogd, en false als de gebruiker niet is ingelogd. In de if-voorwaarde vroegen we ons af of de variabele is_user_logged_in waar is of niet. Omdat de variabele niet klopte, werden de codes in de eerste voorwaarde niet uitgevoerd en doorgegeven aan het else-blok. Zoals u weet, worden de codes in het else-blok uitgevoerd als alle andere voorwaarden ongeldig zijn. In dit geval werden de codes in het else-blok uitgevoerd en werd de uitvoer "Aanmelden" geleverd.

// if else ile uzun ifade
$is_user_logged_in = false;
if ($is_user_logged_in === true) {
	echo $button_name = 'Çıkış Yap';
} else {
	echo $button_name = 'Giriş Yap';
}
// Çıktı: Giriş Yap
// ternary operator ile kısa ifade
$is_user_logged_in = false;
echo $button_name = $is_user_logged_in ? 'Çıkış Yap' : 'Giriş Yap';
// Çıktı: Giriş Yap

Met PHP-echovorming PHP-ternaire operatorWij kunnen gebruiken. Laten we dit eens bekijken met 2 voorbeelden.

$number = 20;
echo ($number > 15) ? "15'ten daha büyük" : "15'ten daha büyük değil";
// Çıktı: number değişkeninin verisi 15'ten daha büyük
$number = 5;
echo ($number == 10) ? "number değişkeninin verisi 10'a eşit" : "number değişkeninin verisi 10'a eşit değil";
// Çıktı: number değişkeninin verisi 10'a eşit değil

PHP Ternaire Operator Chaining (Tternaire Operators aan elkaar koppelen)

In dit voorbeeld PHP-ternaire operator Er zit een nieuwe ternaire operator in. Daarom deze uitdrukking PHP-ternaire operator We noemen dit het ketenen van ternaire operatoren.  Laten we nu dit voorbeeld eens bekijken: Laten we aannemen dat de variabele $is_logged_in de waarde true krijgt als de gebruiker is ingelogd, en anders false. $balance variabele is het saldo van de gebruiker, $price variabele is de prijs van het product. De variabele $message is het bericht dat we aan de gebruiker laten zien. Als de variabele is_logged_in in de variabele $message waar is, blijft de voorwaarde actief; Als dit niet waar is, worden de gegevens "Log eerst in op uw account om het product te kopen" toegewezen aan de variabele $message. De voorwaarde bleef actief omdat de variabele $is_logged_in waar was. Als voorwaarde in de tweede ternaire operator hebben we gevraagd of de gegevens van de variabele $balance gelijkwaardig zijn aan de gegevens van de variabele $price. De gegevens van de variabele $balance zijn 24, de gegevens van de variabele $price zijn 30. Omdat ze niet equivalent zijn, retourneert de voorwaarde niet waar, maar false. PHP-ternaire operatorDe eerste gegevens van werden alleen toegewezen als de voorwaarde waar retourneerde, de tweede gegevens werden alleen toegewezen als de voorwaarde onwaar retourneerde. De voorwaarde retourneerde false en aan de variabele $message werden de gegevens toegewezen: 'U heeft niet voldoende saldo om het product te kopen.' We hebben de variabele $message met echo afgedrukt.

$is_logged_in = true; // kullanıcı giriş yaptı mı?   
$balance = 24; // bakiye
$price = 30; // ürün fiyatı
$message = $is_logged_in
			? ($balance === $price
					? 'Ürünü satın almak için yeterli bakiyeniz var'
					: 'Ürünü satın almak için yeterli bakiyeniz yok')
			: 'Ürünü satın almak için önce hesabınıza giriş yapın';
echo $message;
// Ürünü satın almak için yeterli bakiyeniz yok