Skip to content

Instantly share code, notes, and snippets.

@lavoiesl
Last active December 8, 2017 10:12
Show Gist options
  • Save lavoiesl/4998690 to your computer and use it in GitHub Desktop.
Save lavoiesl/4998690 to your computer and use it in GitHub Desktop.
PHP Document Root, Path and URL detection.
<?php
$base_dir = __DIR__; // Absolute path to your installation, ex: /var/www/mywebsite
$doc_root = preg_replace("!${_SERVER['SCRIPT_NAME']}$!", '', $_SERVER['SCRIPT_FILENAME']); # ex: /var/www
$base_url = preg_replace("!^${doc_root}!", '', $base_dir); # ex: '' or '/mywebsite'
$protocol = empty($_SERVER['HTTPS']) ? 'http' : 'https';
$port = $_SERVER['SERVER_PORT'];
$disp_port = ($protocol == 'http' && $port == 80 || $protocol == 'https' && $port == 443) ? '' : ":$port";
$domain = $_SERVER['SERVER_NAME'];
$full_url = "${protocol}://${domain}${disp_port}${base_url}"; # Ex: 'http://example.com', 'https://example.com/mywebsite', etc.
@cemfirat
Copy link

cemfirat commented Dec 8, 2017

severity: 'error'
message: ''}' expected.'
at: '7,38'
source: 'php'
code: 'undefined'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment