Search code examples
phpurlpathrequirerelative-path

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";

Solution

  • 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.