繁体   English   中英

PHP的生成列循环?

[英]PHP Generate Column loop?

我试图在html内生成列循环。 这是正常的代码,可以正常工作并以正确的格式输出我想要的所有内容。

<tr>
<td style="color:#<?php echo $ftstyle1; ?>"><div style="background-color:#<?php echo $bgstyle1; ?>"><?php echo $partnumber ?></div></td>
<td style="color:#<?php echo $ftstyle; ?>"><div style="background-color:#<?php echo $bgstyle; ?>"><?php echo $vendorpartnumber ?></div></td>
<td style="border:1px solid black;"><?php echo $cost ?></td>
<td style="border:1px solid black;"><?php echo $stock ?></td>
<td style="border:1px solid black;"><?php echo $wholesale ?></td>
<td style="border:1px solid black;"><?php echo $notes ?></td>
<td style="color:#<?php echo $ftstyle3; ?>"><div style="background-color:#<?php echo $bgstyle3; ?>"><?php echo $salesquotient_p ?></div></td>
<td style="border:1px solid black;"><?php echo $last7dayssum ?></td>
<td style="border:1px solid black;"><?php echo $last1day_n ?></td>
<td style="border:1px solid black;"><?php echo $last2day_n ?></td>
<td style="border:1px solid black;"><?php echo $last3day_n ?></td>
<td style="border:1px solid black;"><?php echo $last4day_n ?></td>
<td style="border:1px solid black;"><?php echo $last5day_n ?></td>
<td style="border:1px solid black;"><?php echo $last6day_n ?></td>
<td style="border:1px solid black;"><?php echo $last7day_n ?></td>

我正在尝试将回显$ last1day_n,$ last2day_n等替换为将生成这些列的循环。 到目前为止,这是我尝试过的。

<td style="border:1px solid black;"><?php echo $cost ?></td>
<td style="border:1px solid black;"><?php echo $stock ?></td>
<td style="border:1px solid black;"><?php echo $wholesale ?></td>
<td style="border:1px solid black;"><?php echo $notes ?></td>
<td style="color:#<?php echo $ftstyle3; ?>"><div style="background-color:#<?php echo $bgstyle3; ?>"><?php echo $salesquotient_p ?></div></td>

<?php for ($i = 1; $i <= 7; $i++) {
$dd = "$" . "last" . strval($i) . "day_n";
?>
<td style="border:1px solid black;"><?php echo $dd ?></td>
<?php }  ?>

这行不通。 它输出“ $ last1day_n”,“ $ last2day_n”,...“ $ last7day_n”,而不是我尝试回显的正确整数值。 这是循环列的正确方法还是我以错误的方式进行处理?

您可以尝试从$ dd值中删除“ $”,然后在引用它时添加一个额外的“ $”。

$dd = "last" . strval($i) . "day_n";

echo $$dd;

“ $$ dd”基本上表示采用由变量“ dd”的值命名的变量的值。 因此,将$ dd设置为所需的变量名称,然后获取该变量的值。 在PHP中,这称为“变量变量”: http : //www.php.net/manual/zh/language.variables.variable.php

$$ dd无效。 我使用它使它工作:

<?php 
   for ($i = 1; $i <= 7; $i++) {
       $dd = ${'last' . $i . 'day_n'};
       echo $dd;
   }
?>

来源: http : //forums.asmallorange.com/topic/5427-php-convert-string-to-variable/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM