get current directory of symlink'd php script and not actual php script
For Web Server requests
dirname($_SERVER['SCRIPT_FILENAME']) will give you what you need.
Failing that $_SERVER['PHP_SELF'] or even REQUEST_URI may have what you need, depending on your server configuration.
For CLI (command Line)
this won't work in cli (command line) scripts as $_SERVER is added by the web server.
Fortunately it's a lot easier with cli scripts (as there is no web server to mess about with things).
All you need is to read the command line that started the script: http://php.net/manual/en/reserved.variables.argv.php. The first argument $argv[0] is always the name that was used to run the script.
If you want to get the current path with symlink you can ask your host OS:
$path = exec('pwd');