Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHP - Relative paths "require"

My directory structure looks like this:

blog -> admin -> index.php
blog.php
db.php
functions.php

I have been trying to include (require, really) blog.php in the admin/index.php, but facing lots of errors. I'm following a PHP course, and the instructor does the same thing successfully.

admin/index.php:

require "../blog.php";

which, in turn, requires two more files in its directory.

require "db.php";
require "functions.php";
like image 928
Rafay Avatar asked Dec 16 '12 05:12

Rafay


2 Answers

If you find that relative include paths aren't working as expected, a quick fix is to prepend __DIR__ to the front of the path you're trying to include.

require __DIR__ . "/../blog.php";

It's reasonably clean, and you don't need to modify the include path or working directory.

like image 118
Sam Dufel Avatar answered Oct 05 '22 14:10

Sam Dufel


You need to set the include_path in your php.ini.

If you want to set it at run-time, use set_include_path().

like image 39
Andy Lester Avatar answered Oct 05 '22 14:10

Andy Lester