在变量PHP中使用循环

时间:2018-01-23 10:52:24

标签: php

我在这里打我的头, 我如何在变量中加入while循环?

$variable="
<table style='margin-bottom:30px;'>
                  <tr class='table_heads'>
                      <b><td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>S.No</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Ingredients</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Weight <small><i> - (In Grams)</i></small></td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Fat</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Sweetness</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Solid 1</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Solid 2</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Anti-Freezing Power</td>
                  </tr>

 while(somethign here too){ // here is the problem even i try to concenite this it dosent work ..
   <tr class='table_headsnonw' style='font-size:12px;'>
                      <td>1</td>
                      <td>
                          3
                      </td>
                      <td>300</td>
                      <td>300</td>
                      <td>300</td>
                      <td>300</td>
                      <td>300</td>
                      <td>300</td>
                  </tr>
 }
 <tr class='table_heads'>
                      <b><td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>S.No</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Ingredients</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Weight <small><i> - (In Grams)</i></small></td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                  </tr>

 ";

我添加了代码adove问题是我在PHP变量中有HTML然后一些html是由数据库的while循环生成的,然后所有这些都需要在变量中存储,以便我可以打印它。

我无法找到解决这个问题的方法..

5 个答案:

答案 0 :(得分:8)

function criterionlist()
{
                $this->load->database();
                $this->load->helper(array('url', 'form'));
                $this->load->model('p_model');
                $data['field'] = $this->p_model->get_field();
                $this->load->view('criterionlist',$data);


}

答案 1 :(得分:3)

您可以将您在循环中生成的任何字符串保存在变量中,然后将其连接起来。

{
"phonenumber":"",
"username":""
}

答案 2 :(得分:0)

你应该连续,例如:

<#list myObject?values?sort_by("name") as item>
</#list>

答案 3 :(得分:0)

这可能不是编写代码的好方法。你应该在html中回显php,而不是相反。 无论如何,要解决你的问题:

$variable="
<table style='margin-bottom:30px;'>
                  <tr class='table_heads'>
                      <b><td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>S.No</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Ingredients</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Weight <small><i> - (In Grams)</i></small></td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Fat</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Sweetness</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Solid 1</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Solid 2</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Anti-Freezing Power</td>
                  </tr>";


 while(somethign here too){ 
$variable .="       <tr class='table_headsnonw' style='font-size:12px;'>
                      <td>1</td>
                      <td>
                          3
                      </td>
                      <td>300</td>
                      <td>300</td>
                      <td>300</td>
                      <td>300</td>
                      <td>300</td>
                      <td>300</td>
                  </tr>";
 }


$variable .="<tr class='table_heads'>
    <b><td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>S.No</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Ingredients</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>Weight <small><i> - (In Grams)</i></small></td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                      <td style='border: 1px solid #d8d8d8;padding: 2px 7px 2px 7px;background: #ddd;font-weight: bold;font-size: 11px;'>0</td>
                  </tr>

 ";

你看到我用。=附加到变量?这将在循环的每次迭代中向您的变量添加一些内容,然后将添加最后一部分。

答案 4 :(得分:0)

在while循环中,基本代码应该类似于

$x=1
$var="<table>"; 
// here you can add a more "outside loop" rows
// like $var.="<tr><td>whatever content</td></tr>";

// then create content from the loop    
while($x <= 5) {
    $var.="<tr><td>$x</td></tr>";
    $x++;
}
// and close the table outside the loop
$var.="</table>";
echo $var;

假设您必须循环一个数组,代码的基本结构应该是:

$array=array("a", "b", "c");

$var="<table>"; 
// here you can add a more "outside loop" rows
// like $var.="<tr><td>whatever content</td></tr>";

// then create content from the loop
foreach ($array as $item) {
    $var.="<tr><td>$item</td></tr>";
}   
// close the table outside the loop
$var.="</table>";
echo $var;