【问题标题】:I have PHP code that needs to be referenced in every single shtml page, is the below possible?我有需要在每个 shtml 页面中引用的 PHP 代码,以下可能吗?
【发布时间】:2011-04-04 08:43:13
【问题描述】:

大家好...我对 PHP 不太熟悉...但我有 PHP 代码,如果存在条件,基本上“包含”一个文件。这段 PHP 代码会很长,我想知道是否可以创建一个 .php 文件,并在我的 shtml 文件中包含它?下面的内容是通过在 PHP 中运行一系列 if/else 语句,在 shtml 文件中放置正确的导航栏。如果 REQUEST_URI(当前页面)是 xxxxx.shtml,则包含 THIS 导航栏文件等。这是完美的工作,但是你可以想象一个有数百个页面的站点,我必须将每个页面放在这个在“条件服务器端包含”下方 - 这样做的缺点是如果某些菜单项在导航栏中重新排列,我希望能够只编辑一个 PHP 文件而不是包含以下脚本的每个 shtml 文件。我不知道如何将以下 PHP 包含到它自己的文件中。我认为我需要省略 HTML 特有的内容。但除此之外,它是否就像将上述内容复制并粘贴到它自己的 PHP 文件中一样简单?

目前,这是我每个 shtml 文件中的内容(它会变得更大,这只是开始):

            <!--#if expr="$REQUEST_URI = /1/"-->
        <!--#include virtual="navFiles/featuresCurrent.shtml" -->
        <!--#elif expr="$REQUEST_URI = /2/"-->
        <!--#include virtual="navFiles/videosCurrent.shtml" -->
        <!--#elif expr="$REQUEST_URI = /3/"-->
        <!--#include virtual="navFiles/aboutusCurrent.shtml" -->
        <!--#elif expr="$REQUEST_URI = /4/"-->
        <!--#include virtual="navFiles/subscribeCurrent.shtml" -->
        <!--#elif expr="$REQUEST_URI = /5/"-->
        <!--#include virtual="navFiles/toolsCurrent.shtml" -->
        <!--#elif expr="$REQUEST_URI = /6/"-->
        <!--#include virtual="navFiles/membershipCurrent.shtml" -->
        <!--#endif --> 

我希望能够创建一个包含上述代码的单独的 .php 文件,而不是将 ABOVE 放在我的 shtml 页面中,我只想放置类似“include xxxx.php”的内容。这可能吗?

【问题讨论】:

  • 我不知道如何将上述 PHP 包含到它自己的文件中。我假设我需要省略 -- ... --> 因为它特定于 HTML。但是除此之外,是否就像将上面的内容复制并粘贴到它自己的 PHP 文件中一样简单?

标签: php include server-side-includes ssi shtml


【解决方案1】:

是的,您将代码放在一个文件中并像这样包含该文件:

<?php include ("path to file");?>

看看include函数。

【讨论】:

  • @Piskvor:是的,如果找不到文件,它将抛出致命错误:)
  • 所以在我将创建的 php 文件中,我将包含 -- --> 还是将它们排除在外?我假设把它们排除在外,对吧?语法将如何在我的 php 文件中,完全是我上面没有 -- -->? 的情况
  • 这可能是也可能不是所需的行为; include() 发出警告并继续。
【解决方案2】:

你可以使用

auto_prepend_file = /path/to/file.php

在您的 php.ini 或 .htaccess 文件中,这将在每个 php 脚本之前“require_once”file.php。

【讨论】:

    【解决方案3】:

    如果您希望此脚本可用于您的整个应用程序,则应通过设置 include_path = 'path\to\php\file' 将其路径添加到 php.ini 中的库路径

    如何做到这一点的示例: http://www.cyberciti.biz/faq/how-do-i-set-php-include-path-in-php-ini-file/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-04
      • 2012-07-17
      • 1970-01-01
      • 2017-12-11
      • 1970-01-01
      • 1970-01-01
      • 2012-01-27
      • 1970-01-01
      相关资源
      最近更新 更多