8

因此,我们构建的网站必须从本地开发服务器移植到测试服务器,然后再移植到实时服务器。为此,我们创建了一个变量:

<?php $path = '/_Folder_/_SubFolder_'; ?>

当我们将网站从服务器移到下一个时,想法是简单地更改 $path 定义以改造新的开发服务器。目前,在我们调用包含的每个页面上,我们都会写:

<?php include('../_includes/_css.php'); ?>

但我想做的是:

<?php include($path.'/_includes/_css.php'); ?>

我希望的结果是:

<?php include('/_Folder_/_SubFolder_/_includes/_css.php'); ?>

我一直惨败导致:

警告:包含(/文件夹/_SubFolder_/_includes/_css.php)[function.include]:无法打开流:C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\FREEDOM2012_FREEDOM2012_DEFAULT_\ 中没有这样的文件或目录第 15 行的住宿\guest-rooms.php

其他问题我仍然需要通过调用“../”来包含变量源

<?php include('../_includes/_var.php'); ?>

如果有人对我如何更有效地做到这一点有任何见解,我将不胜感激。非常感谢您在回复中付出的时间、耐心和努力。

4

2 回答 2

2

您需要显示上一个目录:

<?php include('../_includes/_css.php'); ?>

因为你有../,如果你的完整路径是css.php = /_Folder_/_SubFolder_/_includes/_css.php,那么你需要使用这个:

<?php $path = './_Folder_/_SubFolder_';
include($path.'/_includes/_css.php'); ?>

否则,首先显示文件的完整路径_css.php

于 2012-10-25T21:02:26.150 回答
2

你为什么不永远动态地初始化你的 $path 变量并且与环境无关?

喜欢:

$path = dirname(__FILE__);

从 PHP 5.3 开始,您还可以使用__DIR__与上述相同的快捷方式。

@see:http ://www.php.net/manual/en/language.constants.predefined.php

于 2012-10-25T20:51:22.607 回答