Php 如何输出带有变量的html

Php 如何输出带有变量的html,php,parsing,Php,Parsing,我正在学习用PHP构建一个完整的简单网站,但有些代码有错误。我已经部分修复了它,我希望通过修复旧代码(PHP5+)上的错误来学习 最初有问题的代码是这样的,回音行,只有一行,这导致了firefox上的解析错误 <?php foreach ($navItems as $item) { echo "<li><a href=\"$item['slug']\">$item['title']</a></li>";

我正在学习用PHP构建一个完整的简单网站,但有些代码有错误。我已经部分修复了它,我希望通过修复旧代码(PHP5+)上的错误来学习

最初有问题的代码是这样的,回音行,只有一行,这导致了firefox上的解析错误

<?php
        foreach ($navItems as $item) {
            echo "<li><a href=\"$item['slug']\">$item['title']</a></li>";
        }
    ?>

分析错误:语法错误,意外的“”(T_封装的_和_空格),应为“-”或标识符(T_字符串)或变量(T_变量)或数字(T_NUM_字符串)

我试着用这个来改进它

<?php
    foreach ($navItems as $item) {
        echo '<li><a href="$item' . '["slug"]">$item["title"]</a></li>';
    }
?>

但现在它对每个菜单项错误地“回显”-$item[“title”]-


如果我所做的更正是正确的,那么我将不得不放弃这门课程,因为它将很难全部更正。如果您能帮助解决这个小问题,我将非常感激。

以下是如何在php中使用串联

echo "<li><a href=\\".$item['slug']."\\>".$item['title']."</a></li>";
echo“
  • ”;
    我建议研究字符串插值,因为它速度更快

    下面是如何在php中使用字符串插值。阅读更多

    echo“
  • ”;
    标记具有不同的行为

    试试这个,对初学者来说更容易:

    <?php
        foreach ($navItems as $item) {
            echo '<li><a href="' . $item['slug'] . '">' . $item['title'] .'</a></li>';
        }
    ?>
    
    
    
    工作得很好-谢谢实际上,这一个将“符号”带到了echo输出中。您可能希望“符号”用于正确的html格式。我刚刚更新了我的答案。这就是您想要的吗?我现在使用这一个,因为它可以工作。谢谢您的帮助echo”
  • ";好啊对于html,您需要在引号中添加href。所以
    可能会导致某些浏览器出现问题,但
    更有效。我将继续跟进。非常有用。非常感谢。
    <?php
        foreach ($navItems as $item) {
            echo '<li><a href="' . $item['slug'] . '">' . $item['title'] .'</a></li>';
        }
    ?>