How to use __dir__?

亡梦爱人 提交于 2019-12-18 12:11:17

问题


I want to use __dir__.

However, I can't find any good tutorial on how to set it up. I have my htdocs in Dropbox.

Does it work something like this?

 define(__DIR___, 'd:documents/dropbox/yolo/swag/htdocs/myproject/test/newtest/
 testphp/test_new/testincludes/1/new_folder/')

That is the directory where my project is located and it has sub folders. I want to include a file into another file that is in the parent folder.

Should I then just type:

 include'__DIR__/warlock.php'; 

Or do I have to type something like this?

 include '___DIR__/wow/newb/guidesfornabz/classes/casters/warlock.php'; 

回答1:


You can use __DIR__ to get your current script's directory. It has been in PHP only since version 5.3, and it's the same as using dirname(__FILE__). In most cases it is used to include another file from an included file.

Consider having two files in a directory called inc, which is a subfolder of our project's directory, where the index.php file lies.

project
├── inc
│   ├── file1.php
│   └── file2.php
└── index.php

If we do include "inc/file1.php"; from index.php it will work. However, from file1.php to include file2.php we must do an include relative to index.php and not from file1.php (so, include "inc/file2.php";). __DIR__ fixes this, so from file1.php we can do this:

<?php
include __DIR__ . "/file2.php";

To answer your question: to include the file warlock.php that is in your included file's upper directory, this is the best solution:

<?php
include __DIR__ . "/../warlock.php";


来源:https://stackoverflow.com/questions/32537477/how-to-use-dir

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!