包括php中的文件

VKG*_*KGS 6 php path include

嗨,
我尝试通过终端运行文件,但我得到的错误,如"包含路径不正确"
,例如,我在下面的文件夹中有一个"test.php"

/home/sekar/test/file.php  
Run Code Online (Sandbox Code Playgroud)

在文件php我已经包含一个文件"head.php",其中,

/home/sekar/test/includes/head.php
Run Code Online (Sandbox Code Playgroud)

这个head.php包含一个名为cls.php的类文件,它位于类文件夹中,

/home/sekar/test/classes/cls.php
Run Code Online (Sandbox Code Playgroud)

我在终端试过这个,

php /home/sekar/test/file.php
Run Code Online (Sandbox Code Playgroud)

为了一个清晰的视图,只需看看这三个文件的内容,

file.php

<?php 
include_once "./test/includes/head.php";
?>
Run Code Online (Sandbox Code Playgroud)

head.php

<?php 
include_once "./test/classes/cls.php";
?>
Run Code Online (Sandbox Code Playgroud)

cls.php

<?php 
echo "this is from cls file";
?>
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我解决这个问题吗?谢谢!

Ble*_*der 1

我认为include_once()基本上将代码插入到您的文件中而不对其进行评估,因此路径相对于包含文件的路径(file.php,而不是 head.php)。

另外,我会对相对路径进行一些研究,因为您是从目录/home/sekar/test/而不是文件的路径引用的。

这可能有效:

文件.php

<?php 
include_once "./includes/head.php";
?>
Run Code Online (Sandbox Code Playgroud)

头.php

<?php 
include_once "../classes/cls.php";
?>
Run Code Online (Sandbox Code Playgroud)

cls.php

<?php 
echo "this is from cls file";
?>
Run Code Online (Sandbox Code Playgroud)