![](/img/trans.png)
[英]Include PHP, not working when included php code is for files in different directories
[英]php included files and directories
可以說我在目錄new_folder中有兩個文件:a.php和b.php
在a.php文件中有一條語句:
include_once 'b.php'
另外,我在父文件夾中有一個文件demo.php,在演示文件中有一條語句:
include_once 'new_folder/a.php'
IE的文件夾結構為:
demo.php
new_folder
- a.php
- b.php
為什么要在a.php文件中編寫:
include_once 'b.php'
正確的路徑 include_once './b.php'
錯誤的路徑 include_once 'new_folder/b.php'
錯誤的路徑 嘗試這個
require_once('../b.php');
我的答案基於php.net:文件是基於給定的文件路徑包含的,或者,如果沒有給出,則包含指定的include_path。 如果在include_path中找不到該文件,則include最終將在失敗之前檢入調用腳本的自身目錄和當前工作目錄。
這意味着如果我用a.php編寫:include_once'b.php'; 然后在demo.php中包含a.php,然后首先在include_path中查找文件,然后在調用腳本(a.php)的目錄中查找文件,然后才查找文件在工作目錄(即我們運行並啟動所有包含文件的文件的目錄-demo.php)中
編輯:我嘗試運行它,發現首先是在工作目錄中是否有b.php,然后它將包括它,而不是調用腳本的自己目錄中的b.php。
最后檢查文件的位置是new_folder(調用腳本自己的目錄)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.