php - 更新已设置的 php 变量

标签 php mysql variables if-statement while-loop

我认为这可能非常简单,但我一定忽略了一些东西。

基本上,我有 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 语句,但想象一下下面还有多个 IF 语句。您可以在中间看到我的 WHILE 循环,显示数据库中每一行的字段。

问题是,如果我坚持:

$dayrow['Event Time']."<br />".$dayrow['Event Name']."<br />";

在 while 循环之前将其放入变量中,当我回显它时,每次都会相同,因为 $dayrow 部分不会更新。

有什么方法可以将上述内容放入变量中,以便每次 WHILE 循环运行时它都会更新?

也许 $dayrow[''] 部分以某种方式存储为文本而不是变量?

感谢您提供的任何帮助。

编者

最佳答案

正如 DaveRandom 建议的那样,您可以使用 sprintf() 或(更奇特和更多可能性)使用 eval() 的模板系统。

关于php - 更新已设置的 php 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12261546/

相关文章:

java - 是否可以只定义一个变量一次而不使用final

bash - 将 postgresql 结果存储在 bash 变量中

php - PropelORM v1 多数据库

php - 如何从 Zend Framework 2 中的 Zend\Validator\Identical 返回自定义 'isEmpty' 错误消息?

php - 管理员登录屏幕不适用于 mysql 数据库

mysql - 如何设置最高值的排名

PHP MySQL 数据库备份

php - 从 sphinx 搜索中选择所有最新的索引数据

javascript - 从 Google Places API 获取城市地点 ID

java - 在两个 Activity 之间传递 int