相対パス方法は? __dir__
php相対パスへの方法
を使用する方法をここであまりにも多くのページを持った後
public_html
├── config
| |__config.php
├── core
| |__init.php
├── helper
| |__helper.php
├── libraries
| |__page1.php
├── templates
│ ├── page1template.php
│
│__index.php
│__page1.php
前に私のファイル構造です。私はそれらを "rep"フォルダと "admin"フォルダに並べ替える必要があります。私の新しいファイル構造は次のようになります
問題は、私の必要とするものはまだ絶対パスです。私はすべてのパスの前に "../" を追加した場合
私のinitファイル
//Start Session
session_start();
//Include Configuration
require_once('config/config.php');
//Helper Function Files
require_once('helpers/system_helper.php');
require_once('helpers/format_helper.php');
//Autoload Classes
function __autoload($class_name){
require_once('libraries/'.$class_name .'.php');
}
私page1.php
<?php require('core/init.php'); ?>
//Get Template & Assign Vars
$template = new Template('templates/rep/page1.php');
以下のサンプルを参照してください。ページが正しく読み込まれます。以下を参照してください
しかし、インデックスがルートフォルダにあるため、私のindex.phpが破損するため、新しいパスが相対的に間違っています。私は関連する問題で2つの質問を見つけました。私はそれが../を置き換えるために__dir__
を使用することに関連していると思うが、どこに置くべきか分からない。個人的に私にとって
Are PHP include paths relative to the file or the calling code?
ありがとうございます。あなたの記事とこれを何度も何度も何度も読んでいました。最後に私はdirname(__ DIR __)。 '/ path/to.file'を使用していました。 http://stackoverflow.com/questions/36577020/failed-to-open-stream-no-such-file-or-directory/36577021#36577021 – codenoob