Son zamanlarda bazı kodumu gözden geçiriyordu ve bir eksiklik uyum içinde, aşağıdaki gibi bir yapı bıraktığını fark ettim:
$guid = empty($subscription->guid) ? : $subscription->guid;
Şimdi, bu yapılması gerekeni ve yanlış olanı yapmıyordu , ancak bu özellik her zaman ayarlandığından iyi çalışıyor ve aşağıdaki değişiklik nedeniyle 5.3'ten beri sözdizimi hatası yok :
PHP 5.3'ten bu yana, üçlü operatörün orta kısmını dışarıda bırakmak mümkündür. İfade ifade1?: İfade ifade DOĞRU olarak değerlendirilirse ifade ifade1, aksi takdirde ifade ifade eder.
Bu değişikliğin farkında değildim ve şimdi kullanmam gerekip gerekmediğini merak ediyorum. Bu, yakut gibi dillerden, gerçek bir boole almaktan ziyade a = b || c
ya b
da c
yerine almak için yapabileceğim, eksik olduğum bir şey . Bununla birlikte, üçlü operatör için seçtikleri sözdizimi benim için biraz sezgisel görünüyor. Bunu üretim kodunda mı kullanmalıyım? Kazara gördüğümde kesinlikle kendimi fırlattım.