【问题标题】:use loops inside echo statement在 echo 语句中使用循环
【发布时间】:2013-11-21 06:53:20
【问题描述】:

我想在 echo 语句中使用 for 循环,并且我使用了以下代码,但是出现错误,谁能帮帮我?

$a = "<select class='formfield_select'   name='return_pickuptime_hh' id='rhh' disabled='disabled'>
                      <option value='' selected='selected' disabled='disabled'>Hour</option>
                      ".for($i=$data['timeh'];$i <= 24;$i++) {."
                      <option value='".$i."'>".$i."</option>
                      ". } ."
                    </select>"; 

这段代码在 ajax 部分,所以我需要整个 html 作为一个变量,这样我就可以替换这部分 错误是这样的 语法错误,CI/application/controllers/lha.php 中的意外 T_FOR 在第 748 行

【问题讨论】:

  • 语法错误,CI/application/controllers/lha.php 中的意外 T_FOR 在第 748 行
  • 该错误是因为 for 循环不应该附加到字符串
  • 看下面回答它的工作
  • for 循环在 echo 中是不可能的......你必须改变它
  • 在 echo 中使用 for 循环有什么好的理由吗? PHP : how to use foreach loop inside an echo statement?

标签: php codeigniter loops echo


【解决方案1】:

id 建议先构建您的选项,然后将它们附加到您的回显字符串,如下所示:

$optionString = '';
for ( $i = $data['timeh']; $i <=24; $i++ ){
 $optionString .= "<option ...>".$i."</option>";
}

或进行 2 个回声以打开和关闭选择,并在中间使用选项回声进行循环,例如

echo "<select ...>";

for ( $i = $data['timeh']; $i <=24; $i++ ){
 echo "<option ...>".$i."</option>";
}

echo "</select>"; 

【讨论】:

  • 对不起,我需要这个 html 部分在一个变量中
  • 然后我会设置一个变量,如$htmlString... 将其设置为您的打开选择字符串。使用上面的 for 循环来附加选项。在循环之后附加关闭选择标记 - 并立即将其全部回显
  • @chirag 然后将第一个echo 替换为$string=,其余的替换为$string.=。然后$string 将包含一个变量中的所有内容,可以是echo'd。
【解决方案2】:

试试这个..

echo "<select class='formfield_select'   name='return_pickuptime_hh' id='rhh' >
                  <option value='' selected='selected' >Hour</option>
                  ";


                  for($i=0;$i<=24;$i++) 
                  {

                  echo "<option value=$i>$i</option>";

                   } 

                echo "</select>"; 

【讨论】:

    猜你喜欢
    • 2015-02-15
    • 1970-01-01
    • 2014-10-30
    • 1970-01-01
    • 1970-01-01
    • 2017-09-28
    • 2019-05-06
    • 2017-05-02
    • 2015-07-06
    相关资源
    最近更新 更多