-1

我对 php 很陌生。我正在读一本书,其中有一个关于 while 循环的例子:

<html>
<body>
<table border="0" cellpadding="3">
<tr>
<td bgcolor="#CCCCCC" align="center">Distance</td>
<td bgcolor="#CCCCCC" align="center">Cost</td>
</tr>
<?

  $distance = 50;
  while ($distance <= 250) {
  echo "<tr>
    <td align=\"right\">".$distance."</td>
    <td align=\"right\">".($distance / 10)."</td>
    </tr>\n";

  $distance += 50;
}

?>
</table>
</body>
</html>

这是我在 Apache Web 服务器上运行此代码时的结果:

\n"; $distance += 50; } ?>
Distance     Cost
".$distance."   ".($distance / 10)."

我不知道为什么$distance不打印的值。你能帮我修一下吗?非常感谢你!

4

4 回答 4

5

<?php用, not开始一个代码块<?不要使用短标签

(如果您的书提供带有短标签的 PHP 示例,以及带有 HTML 示例的示例,bgcolor那么我建议您获取一个更新的示例)。

于 2012-07-09T14:10:31.900 回答
1

尝试使用

<?php ?>

而不是

<? ?>
于 2012-07-09T14:12:50.570 回答
1

首先,php代码应该以“ <?php”开头,请将“”替换为“ <?<?php。然后,该文件应保存为“.php”文件。

于 2012-07-09T14:15:11.020 回答
0

在 HTML-Context 中(即您正在编写一个 html 页面)时,使用模板样式更清楚:

<html>
    <body>
        <table border="0" cellpadding="3">
            <tr>
                <td bgcolor="#CCCCCC" align="center">Distance</td>
                <td bgcolor="#CCCCCC" align="center">Cost</td>
            </tr>
            <?php for($distance = 50; $distance <= 250; $distance += 50): ?>
            <tr>
                <td align="right"><?php echo $distance ?></td>
                <td align="right"><?php echo $distance / 10 ?></td>
            </tr>
            <?php endfor ?>
        </table>
    </body>
</html>

这也与 Dreamweaver 等所见即所得编辑器兼容。

于 2012-07-09T14:17:48.180 回答