如何在同一行中回显PHP和HTML?
我只想在如何在同一行中回显PHP和HTML?,php,Php,我只想在标记中回显一个PHP变量。请参阅下面的代码。正确的格式是什么?我的坏了 $row['cat_title']; echo "<li> {$cat_title} </li>"; $row['cat_title']; 回声“{$cat_title}”; echo'。$var.; 或 echo“$var”; 或 echo'。$var.; 或 echo“$var”; 或 您需要引用正确的变量。不过,你的思路是对的 echo "<li> {$row
标记中回显一个PHP变量。请参阅下面的代码。正确的格式是什么?我的坏了
$row['cat_title'];
echo "<li> {$cat_title} </li>";
$row['cat_title'];
回声“{$cat_title} ”;
echo'。$var. ;
或
echo“$var ”;
或
echo'。$var. ;
或
echo“$var ”;
或
您需要引用正确的变量。不过,你的思路是对的
echo "<li> {$row['cat_title']} </li>";
echo“{$row['cat_title']} ”;
您需要引用正确的变量。不过,你的思路是对的
echo "<li> {$row['cat_title']} </li>";
echo“{$row['cat_title']} ”;
另一种选择:
<li><?php echo $row['cat_title']; ?></li>
另一种选择:
<li><?php echo $row['cat_title']; ?></li>
这两种方法中的任何一种都可以
// Use single quotes and periods like this...
echo '<li>'. $row['cat_title'] .'</li>';
//像这样使用单引号和句点。。。
回音“”$第['cat_title']行。 ';
或
//像这样使用双引号。。。
echo“$row['cat_title'] ”;
这两种方法中的任何一种都可以
// Use single quotes and periods like this...
echo '<li>'. $row['cat_title'] .'</li>';
//像这样使用单引号和句点。。。
回音“”$第['cat_title']行。 ';
或
//像这样使用双引号。。。
echo“$row['cat_title'] ”;
如果您需要在HTML中输出特定数组键的值(例如,$row['cat_title']]
),您有很多选项
您可以使用(
):
如果需要在HTML中输出特定数组键的值(例如,
$row['cat\u title']
),可以输出纯HTML并使用快捷语法
您可以使用(
):
您可以输出纯HTML并使用快捷语法
,如果文件中的文件主要是PHP,则:
<?php echo "<li>" . $row['cat_title'] . "</li>"; ?>
<li><?php echo $row['cat_title']; ?></li>
或者相反,如果文件中大部分是HTML,则:
<?php echo "<li>" . $row['cat_title'] . "</li>"; ?>
<li><?php echo $row['cat_title']; ?></li>
在我看来,这很可能是您正在寻找的第二个选项。如果文件中的文件大部分是PHP,那么:
<?php echo "<li>" . $row['cat_title'] . "</li>"; ?>
<li><?php echo $row['cat_title']; ?></li>
或者相反,如果文件中大部分是HTML,则:
<?php echo "<li>" . $row['cat_title'] . "</li>"; ?>
<li><?php echo $row['cat_title']; ?></li>
在我看来,这很可能是您正在寻找的第二种选择。您是否使用模板引擎(例如smarty)?模板化将是IMO的发展方向,除了基于echo
的答案外,您还可以使用(s)printf(“%s ”,$row['cat_title')代码>。您对$row
的使用确实让我担心:这表明您将标记(模板/视图相关代码)与数据库相关代码混合在一起。这被认为是错误的做法HP是一个模板引擎。包括一个完整的第三方模板引擎来完成简单的字符串连接/插值是荒谬的。如果这是在模板/视图中,请使用
,否则请使用“”$猫的头衔。” “
。您是否使用模板引擎(如smarty)?模板化是IMO的一种方式,除了基于echo
的答案外,您还可以使用(s)printf(“%s ”,$row['cat_title')代码>。您对$row
的使用确实让我担心:这表明您将标记(模板/视图相关代码)与数据库相关代码混合在一起。这被认为是错误的做法HP是一个模板引擎。包括一个完整的第三方模板引擎来完成简单的字符串连接/插值是荒谬的。如果这是在模板/视图中,请使用
,否则请使用“”$猫的头衔。” “
。方法1起作用,但方法2包含语法错误。方法1起作用,但方法2包含语法错误。@DuaneRortie请停止传播错误信息。该标记将在自PHP5.4以来的所有现代PHP版本中工作,无论短标记是打开还是关闭@Robert对于所有现代版本的php,这取决于客户端的php版本。@Robert不,这正是我要你停止传播的错误信息。假设客户机运行的是过去4.5年中开发的PHP版本,那么使用它是安全的。即使在PHP5.4之前,它仍然可以安全使用。您无法避免某些服务器可能未配置的PHP的所有部分,或者您必须避免90%的PHP。明智的做法是选择一个支持您正在使用的语言部分的主机,而不是回避所有可能在每个PHP安装中都不可用的部分。让我吃惊的是,仍然有PHP开发人员认为@DuaneLortie请停止传播错误信息。该标记将在自PHP5.4以来的所有现代PHP版本中工作,无论短标记是打开还是关闭@Robert对于所有现代版本的php,这取决于客户端的php版本。@Robert不,这正是我要你停止传播的错误信息。假设客户机运行的是过去4.5年中开发的PHP版本,那么使用它是安全的。即使在PHP5.4之前,它仍然可以安全使用。您无法避免某些服务器可能未配置的PHP的所有部分,或者您必须避免90%的PHP。明智的做法是选择一个支持您正在使用的语言部分的主机,而不是回避所有可能在每个PHP安装中都不可用的部分。让我吃惊的是,仍然有PHP开发人员认为您忘记了最好的选择:。没有理由使用@meagar你是对的。写答案以避免“这在我的PHP5.2服务器上不起作用”的回答是我需要打破的懒惰习惯。我想对这些类型的答复的适当答案是否定的“然后你必须使用这是一个非常好的全面答案。我把这个问题标记为另一个问题的副本,但我觉得这是一个比副本更好的答案。谢谢@Andrew。看起来它绝对可以被认为是一个复制品。我不确定这个问题是否正确