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.php
和 functions.php
在 includes
文件夹中,您只需删除路径中的 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');
?>
我很确定我写错了目录。
这是我在 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.php
和 functions.php
在 includes
文件夹中,您只需删除路径中的 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');
?>