簡體   English   中英

在 PHP 中包含 header 和函數文件的正確方法

[英]Proper way to include header and functions files in PHP

我的所有文件都在 public_html 目錄中,如下所示

global_assets
assets/layouts/header.php
assets/setup/env.php
order/index.php
order/info/index.php

現在一切都在 order/index.php 中正常工作,其中我包括 header

include '../assets/layouts/header.php';

現在我嘗試在我的訂單/信息/索引中包含 header。php 如下所示

include '../../assets/layouts/header.php';

Header 也被正確包含在其中,但它給了我一個名為

PHP Fatal error:  require(): Failed opening required '../assets/setup/env.php' in /home/myusername/public_html/assets/layouts/header.php on line 7

由於目錄結構,我會遇到很多類似的錯誤。 我認為我沒有遵循正確的方法來包含文件,因此我可以從任何目錄、子目錄中正確調用它而不會出現任何問題。 讓我知道這里是否有人可以幫助我。

非常感謝!

您可以通過多種方式定義和檢索項目的根目錄,然后您始終可以從該根目錄訪問 php 文件。

  1. 環境變量

    include getenv('MY_PROJ_ROOT').'/assets/...';
  2. 自動添加文件

    //php.ini auto_prepend_file="/path/to/prepend-file.php" //prepend-file.php define('MY_PROJ_ROOT', '/path/to/project-root'); //any other files include MY_PROJ_ROOT.'/assets/...';
  3. 包含路徑

    //php.ini include-path=".:/path/to/project-root" //other files include 'assets/...';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM