PHP - with require_once/include/require, the path is relative to what?
when on "index.php"
, I do require_once("/all_fns.php")
.
"all_fns.php"
itself requires files with paths relative to all_fns.php
(itself).
My question is, should I write the paths on all_fns relative to all_fns.开发者_开发技巧php or to index.php?
This is all very confusing to me and wanted to get it straight.
They are treated as relative to index.php
.
If you need to reference a file relative to the include, use
__DIR__."/relative/file.php";
They are relative to the getcwd().
in index.php define some directories
define ( 'INCLUDES_DIR', dirname( __FILE__ ) );
define ( 'INCLUDES_DIR2', INCLUDES_DIR . '/some_directory' );
then in all the other files you can use INCLUDES_DIR
include( INCLUDES_DIR1 . 'file.php' );
Either Use
echo in_get( "include_path") ;
Or open up your ini file and find out what your ini path is, and put your include file in THAT DIRECTORY (or one of those directories) and release yourself from worrying about absolute/relative include problems forever.
精彩评论