如何更有效地重写此php

如何更有效地重写此php,php,if-statement,Php,If Statement,我需要显示手动/自动变速器车辆信息,我能想到的最好的方法是以下代码。我认为这是错误的和低效的,但我不能完全指出这一点 <?php if ($obj->AutoTrans == 'S'): echo "Automatic"; if ($obj->ManualTrans == 'O'): echo " (Manual Optional)"; endif; elseif($obj->ManualTrans == 'S')

我需要显示手动/自动变速器车辆信息,我能想到的最好的方法是以下代码。我认为这是错误的和低效的,但我不能完全指出这一点

<?php
if ($obj->AutoTrans == 'S'):
  echo "Automatic";
  if ($obj->ManualTrans == 'O'):
    echo " (Manual Optional)";
  endif;                   
elseif($obj->ManualTrans == 'S'):
  echo "Manual";
  if ($obj->AutoTrans == 'O'):
    echo " (Automatic Optional)";
  endif;     
endif;                  
?>


这种方法没有任何低效之处。不过,在我看来,你可以用大括号而不是块语法写得更清楚。

对不起,这绝不是什么问题。再试一次。你是如何衡量效率的?说“我认为这是错误的和低效的”是真的,他忘记了问号,但我认为没有那么糟糕。很可能他是想问这样的问题:“有没有更干净/更好/更简洁的方法来编写这段代码?”有太多的方法来编写它,但没有效果?如果是这样的话,那么您希望更少的行、更紧凑的代码、更少的测试。。。太多的改进轴(只有当我们考虑我们能做的更好)…描述你的期望和为什么你说它是错误的,“马克拜尔斯是正确的。我为这一混乱道歉。
if ($obj->AutoTrans == 'S')
    echo "Automatic".($this->ManualTrans=='O'?' (Manual Optional)':'');

if ($obj->ManualTrans == 'S')
    echo "Manual".($this->AutoTrans=='O'?' (Automatic Optional)':'');