我认为这可能真的很简单,但是我必须忽略一些事情。
基本上,我有If / Else php语句,用于检查条件是否为真。在每个if语句中,都有一个WHILE循环,该循环回显数据库中所有适当的行。
while循环需要打印一些表格单元格和行中的字段。目前,每个WHILE循环都有手动键入的代码,这意味着如果我想更改布局或其他内容,则需要在每个while循环内进行更改。
我想做的是定义一个可以回显的变量,这样我只需要在一个位置更改代码即可影响所有WHILE循环。但是,WHILE循环中内容的性质意味着这将无法工作,这就是原因:
//If the date is a monday
if($daycheck == "Monday") {
//Start a row and create cell with date in
echo "<tr><td height='100px' valign='top'>".$datedisplay."<br />";
//For each event found for this day
while($dayrow = mysql_fetch_assoc($dayresult)) {
//Show the event info
echo $dayrow['Event Time']."<br />".$dayrow['Event Name']."<br />";
}
//End the cell for the day
echo "</td>";
}
这是一个IF语句,但是想象下面还有其他几个语句。您可以在中间看到我的WHILE循环,其中显示了数据库中每一行的字段。
问题是,如果我坚持:
$dayrow['Event Time']."<br />".$dayrow['Event Name']."<br />";
在while循环之前放入变量中,当我将其回显时,每次$ dayrow部分都不会更新时,它将是相同的。
有什么方法可以将上面的内容放入变量,以便每次运行WHILE循环时都可以对其进行更新?
也许如果$ dayrow ['']部分以某种形式而不是变量形式存储为文本?
感谢您提供的任何帮助。
埃兹
最佳答案
正如DaveRandom所建议的那样,您可以使用sprintf()
或(更花哨的方式和更多的可能性)使用eval()
模板系统。