如何在同一行中回显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。看起来它绝对可以被认为是一个复制品。我不确定这个问题是否正确