我想驗證國家Php是否與其他?符號
<option<? $nationality == 'Albania' ? echo 'selected="selected"';?> value="Albania">Albania</option>
我要檢查,如果變量$國籍是阿爾巴尼亞
如果這是真的,我想選擇=「選擇」回聲HTML代碼
有什麼錯我的代碼
我得到一個錯誤
Parse error: syntax error, unexpected T_ECHO
我想驗證國家Php是否與其他?符號
<option<? $nationality == 'Albania' ? echo 'selected="selected"';?> value="Albania">Albania</option>
我要檢查,如果變量$國籍是阿爾巴尼亞
如果這是真的,我想選擇=「選擇」回聲HTML代碼
有什麼錯我的代碼
我得到一個錯誤
Parse error: syntax error, unexpected T_ECHO
您應該在條件之前放置回聲。此外,「其他」部分缺失。這應該這樣做:
<option<? echo ($nationality == 'Albania') ? ' selected="selected"' : ''; ?> value="Albania">Albania</option>
欲瞭解更多信息,檢查documentation。
您需要正確完成您的三元運算符並在其之前添加echo
。 這是你應該做的:
<option<? echo $nationality == 'Albania' ? echo 'selected="selected"' : '';?> value="Albania">Albania</option>
如上所指出,第二「迴響」應該被省略,因爲它會產生一個錯誤。 – FKasa
我想首先說,在PHP中使用短標籤是不是推薦,因爲它是相同的標籤XML使用。
<option<?php echo ($nationality == 'Albania' ? 'selected="selected"' : '');?> value="Albania">Albania</option>
我改變了這一點,所以它會回顯變量的速記值。它不起作用的原因是因爲速記要求:
用於else語句。
此外,由於這看起來是一個國家名單,您可以通過循環的值來節省大量時間。
<?php
$nationality = "Country1";
$countries = array('Country1','Country2');
echo '<select>';
foreach($countries as $country) {
echo '<option value="'.$country.'"'.($nationality == $country ? ' selected="selected"' : '').'>'.$country.'</option>';
// This below line is just for formatting. It can be removed;
echo "\n";
}
echo '</select>';
?>
代碼輸出
<select>
<option value="Country1" selected="selected">Country1</option>
<option value="Country2">Country2</option>
</select>
把其他條件也.. –