单选按钮上的三元运算符
Ternary operator on Radio Button
我是 PHP/Programming 的新手。我无法理解用于单选按钮的这种三元运算符条件。谁能告诉我如何将其转换为简单的 if else
类型条件。?
<?php if($_POST['midnightdelivery'])
{
echo ($_POST['midnightdelivery'] == 0)?'checked="checked"':'';
}
else
{
echo 'checked="checked"';
}
?>
为了理解三元运算符,我检查了这个 This。但在我的案例中我无法理解同一个运算符。
更新:还有谁能给我一个if-elseif -else
到三元运算符的例子吗?
单选按钮 $_POST['midnightdelivery']
将传递其值,而不是 1 或 0 表示选中或未选中。
您可以按如下方式设置单选按钮,以获取 1 或 0 表示选中和未选中。
<input name="midnightdelivery" type="radio" value="1" checked="checked" />
<input name="midnightdelivery" type="radio" value="0" />
你可以使用
echo ($_POST['midnightdelivery'] == '1')?'checked="checked"':'';
我认为下面的代码将帮助您理解三元运算符......
以下代码用于 current_file.php 使用 if elseif else.....
<?php
if(isset($_POST["submit"]))
{
$gender = $_POST['gender'];
if($gender == male)
{
$selected_radio_button = "checked='checked'";
}
elseif($gender == female)
{
$selected_radio_button = "checked='checked'";
}
else
{
$selected_radio_button = "";
}
?>
<form action="#">
<input type='radio' name='gender' value='male' <?php echo $selected_radio_button; ?>> Male
<input type='radio' name='gender' value='female' <?php echo $selected_radio_button; ?>> Female
<input type='submit' name='submit' value='Submit'>
</form>
<?php
}
else
{
?>
<form name='rform' method='post' action='current_file.php'>
<input type='radio' name='gender' value='male'> Male
<input type='radio' name='gender' value='female'> Female
<input type='submit' name='submit' value='Submit'>
</form>
<?php
}
?>
现在,下面的代码是 current_file.php 使用三元运算符......
<?php
if(isset($_POST["submit"]))
{
$gender = $_POST['gender'];
($gender == "male" || $gender == "female") ? $selected_radio_button = "checked='checked'" : $selected_radio_button = "";
?>
<form action="#">
<input type='radio' name='gender' value='male' <?php echo $selected_radio_button; ?>> Male
<input type='radio' name='gender' value='female' <?php echo $selected_radio_button; ?>> Female
<input type='submit' name='submit' value='Submit'>
</form>
<?php
}
else
{
?>
<form name='rform' method='post' action='current_file.php'>
<input type='radio' name='gender' value='male'> Male
<input type='radio' name='gender' value='female'> Female
<input type='submit' name='submit' value='Submit'>
</form>
<?php
}
?>
两个服务器的结果相同,但三元运算符使用的代码行更少....
希望这对你有所帮助...
我是 PHP/Programming 的新手。我无法理解用于单选按钮的这种三元运算符条件。谁能告诉我如何将其转换为简单的 if else
类型条件。?
<?php if($_POST['midnightdelivery'])
{
echo ($_POST['midnightdelivery'] == 0)?'checked="checked"':'';
}
else
{
echo 'checked="checked"';
}
?>
为了理解三元运算符,我检查了这个 This。但在我的案例中我无法理解同一个运算符。
更新:还有谁能给我一个if-elseif -else
到三元运算符的例子吗?
单选按钮 $_POST['midnightdelivery']
将传递其值,而不是 1 或 0 表示选中或未选中。
您可以按如下方式设置单选按钮,以获取 1 或 0 表示选中和未选中。
<input name="midnightdelivery" type="radio" value="1" checked="checked" />
<input name="midnightdelivery" type="radio" value="0" />
你可以使用
echo ($_POST['midnightdelivery'] == '1')?'checked="checked"':'';
我认为下面的代码将帮助您理解三元运算符......
以下代码用于 current_file.php 使用 if elseif else.....
<?php
if(isset($_POST["submit"]))
{
$gender = $_POST['gender'];
if($gender == male)
{
$selected_radio_button = "checked='checked'";
}
elseif($gender == female)
{
$selected_radio_button = "checked='checked'";
}
else
{
$selected_radio_button = "";
}
?>
<form action="#">
<input type='radio' name='gender' value='male' <?php echo $selected_radio_button; ?>> Male
<input type='radio' name='gender' value='female' <?php echo $selected_radio_button; ?>> Female
<input type='submit' name='submit' value='Submit'>
</form>
<?php
}
else
{
?>
<form name='rform' method='post' action='current_file.php'>
<input type='radio' name='gender' value='male'> Male
<input type='radio' name='gender' value='female'> Female
<input type='submit' name='submit' value='Submit'>
</form>
<?php
}
?>
现在,下面的代码是 current_file.php 使用三元运算符......
<?php
if(isset($_POST["submit"]))
{
$gender = $_POST['gender'];
($gender == "male" || $gender == "female") ? $selected_radio_button = "checked='checked'" : $selected_radio_button = "";
?>
<form action="#">
<input type='radio' name='gender' value='male' <?php echo $selected_radio_button; ?>> Male
<input type='radio' name='gender' value='female' <?php echo $selected_radio_button; ?>> Female
<input type='submit' name='submit' value='Submit'>
</form>
<?php
}
else
{
?>
<form name='rform' method='post' action='current_file.php'>
<input type='radio' name='gender' value='male'> Male
<input type='radio' name='gender' value='female'> Female
<input type='submit' name='submit' value='Submit'>
</form>
<?php
}
?>
两个服务器的结果相同,但三元运算符使用的代码行更少.... 希望这对你有所帮助...