Rest api: 根路径目录有问题

Rest api: having trouble with root path directory

我很确定我写错了目录。

这是我在 Postman 上遇到的错误:


Warning: require_once(./includes/functions.php): failed to open stream: No such file or directory in /var/www/html/includes/database.php on line 3

Fatal error: require_once(): Failed opening required './includes/functions.php' (include_path='.:/usr/local/lib/php') in /var/www/html/includes/database.php on line 3

我的文件结构:

PHP
_api/
__index.php
_includes/
__database.php
__functions.php

我的 index.php 文件:

 <?php   

    header("Access-Control-Allow-Origin: *");
    header("Content-Type: application/json; charset=UTF-8");

    require_once('../includes/database.php'); 
    $db = new operations();
    $result=$db->view_record();
?>   

database.php文件中的require_once:

<?php 
    session_start();
    require_once('./includes/functions.php');
?>

在functions.php中:

<?php require_once('./includes/database.php');?>

如果有人可以帮助我找到我的代码中缺少的内容,我将不胜感激! :)

您使用的是相对路径,因为 database.phpfunctions.phpincludes 文件夹中,您只需删除路径中的 includes 部分即可。

即:

database.php
<?php 
    session_start();
    require_once('functions.php');
?>
functions.php
<?php require_once('database.php');?>

另一种方法是在 include/require 时使用绝对路径(我更喜欢这种方式)

即:

database.php
<?php 
    session_start();
    require_once(__DIR__ . '/../includes/functions.php');
?>