【问题标题】:How to determine what page called called the php include?如何判断哪个页面叫做php include?
【发布时间】:2015-06-23 15:38:27
【问题描述】:

我正在开发一个存在许多问题的成熟网站。我正在尝试合并一个将在“header.php”文件中编码的新导航栏。我想在 index.php 和其他页面中使用<?php include('header.php') ?> 调用它,但是页面之间存在差异,它需要 header.php 是动态的。我希望 header.php 在被特定页面调用时有一些细微的变化。如何根据调用的页面动态更改 header.php 文件?

这是我的代码:

头文件.PHP

<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="css/angel-header.css">
<!-- RENAME THIS CSS FILE APPROPRIATELY -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>

<body class="m-price_update price_starway vb lang-en webp">

  <header class="angelmod-site-header">
    <div class="angelmod-wrapper">
      <a href="#">
        <img src="img/logo_sb.png" alt="Small Builders">
      </a>
      <nav class="angelmod-site-nav">
        <ul class="angelmod-nav-list">
          <li><a href="#">Home</a>
          </li>
          <li><a href="#">Products</a>
          </li>
          <li><a href="#">Signup</a>
          </li>
          <li><a href="#">Login</a>
          </li>
        </ul>
      </nav>
      <div class="angel-mod-navbtn">
        <div class="angel-mod-navbtn-bars"></div>
        <div class="angel-mod-navbtn-bars"></div>
        <div class="angel-mod-navbtn-bars"></div>
      </div>
    </div>
    <script src="js/angel-header.js"></script>
    <!-- RENAME THIS JS FILE APPROPRIATELY -->
  </header>

我有一个 products.php 文件需要将 body 标签更改为:&lt;body class="m-price_update price_starway vb lang-en webp"&gt; 现在 header.php 只有&lt;body&gt;

请不要问为什么页面之间的正文不同,这是以前的开发人员的工作,我的任务是不改变这些。

【问题讨论】:

    标签: php html navbar


    【解决方案1】:

    执行包含的文件中定义的任何变量都将在包含的文件中可用。只需在包含文件中定义一个变量,该变量标识需要在包含文件中执行的操作。

    // products.php
    $include_option = 'products';
    include('header.php');
    

    然后在包含的文件中,在适当的地方引用该变量以有条件地做任何需要做的事情:

    // header.php
    ...
    <?php if ($include_option == 'products') { ?>
        <body class="m-price_update price_starway vb lang-en webp">
    <?php } else { ?>
        <body class="something else">
    <?php } ?>
    ...
    

    【讨论】:

    • 谢谢,我还不是很精通php。我不知道变量可以重用。我忘记了页面将在服务器中呈现。哈哈。谢谢你。这会奏效。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-02
    • 2017-09-18
    相关资源
    最近更新 更多