【问题标题】:PHP echo H1 depending on page [duplicate]PHP echo H1取决于页面[重复]
【发布时间】:2015-04-20 02:02:23
【问题描述】:

如何根据页面上设置的变量来回显 h1?下面的脚本打破了我的页面。看来我的语法不正确

<header  role="banner"> 

     <?php

       if($page =="home_page")    {echo "<h1>" 'Mountain ' "</h1>"; }                               
    else if($page =="parts")    {echo "<h1>" 'parts ' "</h1>"; }

    else if($page =="cars")    {echo "<h1>" 'cars ' "</h1>"; }

          ?>

</header>

非常感谢, P

【问题讨论】:

  • 为什么说你的语法不正确?当你运行这段代码时会发生什么? (我在您的字符串值中看到了 3 次明显的语法错误)。
  • 不,不正确。您的回声是明显的语法错误。实时调频:php.net/echo
  • 在文件顶部添加错误报告:&lt;?php ini_set("display_errors", 1); error_reporting(E_ALL); ?&gt;,php 会给你答案
  • 大家好,它完全破坏了页面。抱歉,我是 php 新手,所以错误有点令人困惑

标签: php html echo


【解决方案1】:

您的字符串中有错误的关闭和重新打开引号。 试试这个

<header  role="banner"> 

     <?php

    if($page =="home_page")    {echo "<h1> Mountain </h1>"; }                               
    else if($page =="parts")    {echo "<h1> parts </h1>"; }

    else if($page =="cars")    {echo "<h1> cars </h1>"; }

    ?>

【讨论】:

    【解决方案2】:
    <?php
    
       if($page =="home_page")    {echo "<h1> 'Mountain ' </h1>";   }                               
    else if($page =="parts")    {echo "<h1> 'parts ' </h1>"; }
    
    else if($page =="cars")    {echo "<h1> 'cars ' </h1>"; }
    
    ?>
    

    【讨论】:

      【解决方案3】:

      你的语法确实有错误。

      试试这个方法:

      if($page =="home_page"){ echo "<h1>Mountain</h1>"; }    
      elseif($page =="parts"){ echo "<h1>parts</h1>"; }
      elseif($page =="cars"){ echo "<h1>cars</h1>"; }
      

      这不是一种非常优雅的视图方式,但它应该可以工作。

      请记住始终阅读、理解和搜索浏览器中出现的错误。如果它们不明显,您可以发现它们将代码移动到更明显的位置或进行元素检查。

      【讨论】:

        【解决方案4】:

        我有办法清理你的代码:

        switch($page)
        {
            case "home_page":
                echo '<h1>Mountain</h1>'
                break;
            case "parts":
                echo '<h1>parts</h1>';
                break;
            case "cars":
                echo '<h1>cars</h1>';
                break;
             default:
                //Add default code, or more cases.
                break;
        }
        

        【讨论】:

          【解决方案5】:

          您正在脱离 echo 中的字符串,而不是处理它。事实上,在这种情况下,没有理由跳出字符串。看:

          echo "<h1>" 'Mountain ' "</h1>";
          

          第二个" 正在脱离字符串。然后 PHP 尝试将 'Mountain ' "&lt;/h1&gt;"; 读取为 PHP 代码,但它不会。

          echo "<h1>Mountain</h1>";
          

          您现在看到字符串是如何包含的了吗?

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2018-06-13
            • 1970-01-01
            • 2018-12-30
            • 1970-01-01
            相关资源
            最近更新 更多