Php 检查单选按钮(Codeigniter)的第一个值

Php 检查单选按钮(Codeigniter)的第一个值,php,codeigniter,radio-button,Php,Codeigniter,Radio Button,我正在将数据从数据库填充到单选按钮,并希望将第一个值检查为默认值,但我不知道如何操作。这是我迄今为止所做的编码 查看 <?php if($designThemes != null){; ?> <?php foreach ($designThemes as $designTheme) { ?> <?php $designThemesValue = (set_value('theme_name') ? set_value('theme_name') : $desi

我正在将数据从数据库填充到单选按钮,并希望将第一个值检查为默认值,但我不知道如何操作。这是我迄今为止所做的编码

查看

<?php if($designThemes != null){;  ?>

<?php foreach ($designThemes as $designTheme) { ?>

<?php
$designThemesValue = (set_value('theme_name') ? set_value('theme_name') : $designTheme['slug_url']);
$designThemesAttr = array(
    'name'  => 'designThemes',
    'value' => $designThemesValue,
);
?>
<div class="col-md-4 col-sm-4">
    <div class="radio custom-radio">
        <label>
            <?php echo form_radio($designThemesAttr); ?>
            <span class="fa fa-circle"></span> <?php echo $designTheme['theme_name'] ?>
        </label>
    </div>
</div>
<?php }}; ?>


如果我在
$designThemesAttr=array()
中添加
'checked'=>TRUE
,系统将检查单选按钮的最后一个值作为默认值,但我想检查第一个值

'checked'=>TRUE
在$designThemesAttr=array()中,系统将检查单选按钮的最后一个值作为默认值。这是正确的,因为您在for循环中执行此操作,并且在组中只有一个收音机保持选中状态。最后一个是显示checked

因此,维护一个变量来计算迭代次数,如下所示:

$count=1

if( $count = 1; )
{
   // use 'checked' => TRUE here
   $count++;  // The value is incremented so that the if condition can't run again. This will add 'checked' => TRUE to first radio only.
}

解决了您的问题您可以通过条件语句将其设置为用此替换您的代码

   <?php if($designThemes != null){;  ?>

<?php $i=1;foreach ($designThemes as $designTheme) { ?>

<?php
$designThemesValue = (set_value('theme_name') ? set_value('theme_name') : $designTheme['slug_url']);
$designThemesAttr = array(
    'name'  => 'designThemes',
    'value' => $designThemesValue,
);
if($i==1){
    $designThemesAttr['checked'] = TRUE;
}
?>
<div class="col-md-4 col-sm-4">
    <div class="radio custom-radio">
        <label>
            <?php echo form_radio($designThemesAttr); ?>
            <span class="fa fa-circle"></span> <?php echo $designTheme['theme_name'] ?>
        </label>
    </div>
</div>
<?php $i++; }}; ?>

“如果我在$designThemesAttr=array()中添加'checked'=>TRUE,系统将检查单选按钮的最后一个值作为默认值,但我想检查第一个值。”-当然,因为您将为每个单选按钮设置该值-您只需要对第一个单选按钮执行此操作,所以你的问题归结为如何确定你是否在foreach循环的第一次迭代中,所以。。。那次搜索的第一个目标-