如何包含另一个php文件?

时间:2013-02-05 03:59:26

标签: php

我有一个php文件,我想要包含另一个包含css链接标记和javascript源标记的php文件,但是当我尝试包含它们时,它不会被添加到页面中。

我的php页面:

<?php 
    $root = $_SERVER['SERVER_NAME'] . '/mysite'; 
    $theme = $root . '/includes/php/common.php';
    echo $theme;
    include($theme);
?>

的common.php:

<link rel='stylesheet' type='text/css' href='../css/main.css'/>";

任何人都知道什么是错的?感谢

2 个答案:

答案 0 :(得分:6)

PHP的include是服务器端,因此您需要使用服务器端路径。最好使用dirname(__FILE__)代替$_SERVER['SSCRIPT_NAME'],但$_SERVER['SERVER_NAME']绝对是错误的。

尝试:

include dirname(__FILE__)."/common.php";

或者,如果要包含的文件不在同一目录中,请更改路径。例如,对于父目录,请使用dirname(__FILE__)."/../common.php"


请注意,有些人可能会建议使用include "./common.php"或类似内容。这个可以工作,但当调用include的脚本实际上被另一个目录中的另一个脚本包含时,很可能会失败。使用dirname(__FILE__)."/common.php"将消除此问题。

答案 1 :(得分:2)

将您的代码更改为:

<?php  
    $theme = 'includes/php/common.php';
    echo $theme;
    include($theme);
?>

如果您的包含文件夹与您的php页面位于同一文件夹中,那么它应该可以使用,如果不是添加您的域名。在这种情况下,不需要SERVER_NAME。