2016-10-27 41 views
0

我目前使用下面的代碼,如果它的存在是爲了顯示文本顯示從可變文本:因此,如果isset是事實,就變成背景#CCC:PHP isset更改BGColor?

<th class='techid tooltip' data-tech='".$row."' style=\"background:#CCC\"> 
    <span class='staffinfo ".$techHighLight."'>".$row."- "; 
     echo 
      substr($record["EmpLastName"],0,10).(isset($record_StaffSetID) ? "(".$record_StaffSetID.")" : "")." 
    </span> 
</th> 

我需要改變的背景: #000。我嘗試了一系列if/else,並不斷收到語法錯誤。

這裏是我所沒有運氣嘗試一個片段:

echo "<th class='techid tooltip' data-tech='".$row."' ".(isset($record_StaffSetID) ? "style=background:#000 !important;" : "style=background:#CCC !important;")."> 

什麼是處理這個問題的最好方法?

+1

_immediate_答案是:「使用三元運算符(詳見文檔)」。這裏的_constructive_答案應該是:開始使用css類並將你的內聯樣式定義移動到單獨的css文件中以清除事件。 – arkascha

回答

1

嘗試:

<?php 
if (isset($record_StaffSetID)) : 
?> 
<th class='techid tooltip' data-tech="<?php echo $row; ?>" style="background:#CCC"> 
    <span class='staffinfo <?php echo $row; ?>'> 
     <?php echo $row ?> - 
     <?php echo substr($record["EmpLastName"],0,10).(isset($record_StaffSetID) ? "(".$record_StaffSetID.")" : ""); ?> 
    </span> 
</th> 
<?php 
else: 
?> 
<th class='techid tooltip' data-tech="<?php echo $row ?>" style="background:#000"> 
    <span class='staffinfo <?php echo $techHighLight ?>'> 
     <?php echo $row ?> - 
     <?php echo substr($record["EmpLastName"],0,10).(isset($record_StaffSetID) ? "(".$record_StaffSetID.")" : ""); ?> 
    </span> 
</th> 
<?php endif; ?> 

但它不是真正的優雅!

+0

完美,感謝您的幫助! –

+0

爲了記錄,我認爲它是一樣的優雅,因爲它需要! :-) –

2

您也可以指定一個變量。

$bg_color = isset($record_StaffSetID) ? '#000' : '#CCC'; 
echo '<th class="techie tooltip" data-tech="'.$row.'" style="background-color:'.$bg_color.';">';