The Maxwell School
Syracuse University
Syracuse University
The reason (apparently) is the following. When fopen() tries to open a relative pathname, it operates relative to the actual location of the script rather than the location of the symlink.
Example: suppose directory "a" contains two files, a1.php and a2.php, and a1.php has a require("a2.php") statement, and there is also symlink b1.php in some other directory b pointing to a/a1.php. When b1.php is invoked, file "a2.php" will be included (regardless of the setting of include_path). Moreover, the include() and require() statements in a1.php will not find any files in directory b (when invoked as bi.php) unless include_path contains ".". (That is, the "." in include_path matches the location of the symlink.)