如何正确地(独立地)包含文件

时间:2019-08-15 13:38:47

标签: php

因此,基本上,我试图以一种独立的方式(从包含该文件的位置)包含文件,而且我很难确定在良好的体系结构方面该如何真正地做到这一点。

我尝试过这样的事情:

public_html / functions / functions.php:

function load_header() {
   include( get_path() . 'load/header.php' );
}
function get_path() {
   return 'https://example.com/';
}

public_html / index.php:

include('functions/functions.php');
$path = get_path();
load_header();

public_html / load / header.php:

// code
// using variable $path inside of it
// code

以上代码的问题是……一切,真的。我无法访问$ path,什么也不能访问。

是否有一些众所周知的方法来处理这样的事情?我确定一定有...我不想使用任何框架或类似的东西。

希望得到您的帮助,谢谢

1 个答案:

答案 0 :(得分:0)

您应该将其作为参数传递。如果没有这些功能,就不会有问题,例如

# file1.php
$test = 'hello, world';

# file2.php
include 'file1.php';
echo $test;

可以工作,但是由于功能范围的原因,您无权访问$test变量。

通过参数将其传递给函数:

function load_header($path)
{
    include(get_path(). 'load/header.php');
}

现在header.php中有$path