gpt4 book ai didi

php - 我是否正确使用了 __DIR__?

转载 作者:可可西里 更新时间:2023-11-01 16:40:22 29 4
gpt4 key购买 nike

我正在使用以下内容来包含我的 config.php 并将我的 header 插入到每个页面中:

<?php require_once __DIR__."/config.php"; require_once SITE_ROOT."/templates/include/header.php" ?>

但是,当我这样做时,我收到以下错误:

Warning: require_once(/opt/lampp/htdocs/templates/admin/config.php): failed to open stream: No such file or directory in /opt/lampp/htdocs/templates/admin/listArticles.php on line 1

作为引用,这是 config.php 的样子:

<?php
ini_set( "display_errors", true );
date_default_timezone_set( "Australia/Sydney" ); // http://www.php.net/manual/en/timezones.php
define( "DB_DSN", "mysql:host=localhost;dbname=cms" );
define( "DB_USERNAME", "username" );
define( "DB_PASSWORD", "password" );
define( "CLASS_PATH", "classes" );
define( "TEMPLATE_PATH", "templates" );
define( "HOMEPAGE_NUM_ARTICLES", 5 );
define( "ADMIN_USERNAME", "admin" );
define( "ADMIN_PASSWORD", "mypass" );
define('SITE_ROOT', __DIR__);
require( CLASS_PATH . "/Article.php" );


function handleException( $exception ) {
echo "Sorry, a problem occurred. Please try later.";
error_log( $exception->getMessage() );
}

set_exception_handler( 'handleException' );
?>

可能还值得一提的是,我之前收到一条错误消息,告诉我 SITE_ROOT 未定义,但我已通过在/config.php 之前包含目录来修复此问题。

我还尝试在站点的其他地方使用 require_once__DIR__ ..,它工作正常。

出现错误的可能原因是什么?

最佳答案

查看你的错误信息

Warning: require_once(/opt/lampp/htdocs/templates/admin/config.php): failed to open stream: No such file or directory in /opt/lampp/htdocs/templates/admin/listArticles.php on line 1

我假设您的 config.php 不应与您的模板位于同一路径中。需要使用相对路径,所以要看你文件的实际位置(我也不知道这是什么)

<?php require_once __DIR__."/../../config.php"; require_once SITE_ROOT."/templates/include/header.php" ?>

或者根据您的 config.php 的实际位置,类似上面的内容。

希望这对您有所帮助。

关于php - 我是否正确使用了 __DIR__?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47782732/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com