From: Operating system: Windows XP with SP3 PHP version: 5.4SVN-2011-10-31 (snap) Package: Built-in web server Bug Type: Bug Bug description:$_SERVER["PHP_SELF"] incorrect
Description: ------------ When going to, for example, /admin/phpinfo.php/foo/bar?foo=bar, you should get the following (using Apache and PHP on Windows XP): $_SERVER["REQUEST_URI"] == "/admin/phpinfo.php/foo/bar?foo=bar" $_SERVER["PHP_SELF"] == "/admin/phpinfo.php/foo/bar" $_SERVER["SCRIPT_NAME"] == "/admin/phpinfo.php" $_SERVER["PATH_INFO"] == "/foo/bar" $_SERVER["QUERY_STRING"] == "foo=bar" In the snap for October 31, 2011, REQUEST_URI, PATH_INFO and QUERY_STRING are correct, but the following are wrong: $_SERVER["PHP_SELF"] == "\admin\phpinfo.php" (slashes incorrectly replaced by backslashes, and PATH_INFO ending has been incorrectly removed) $_SERVER["SCRIPT_NAME"] == (missing completely) Test script: --------------- phpinfo.php file contains: <?php phpinfo(); ?> Expected result: ---------------- Going to /admin/phpinfo.php/foo/bar?foo=bar should get: $_SERVER["REQUEST_URI"] == "/admin/phpinfo.php/foo/bar?foo=bar" $_SERVER["PHP_SELF"] == "/admin/phpinfo.php/foo/bar" $_SERVER["SCRIPT_NAME"] == "/admin/phpinfo.php" $_SERVER["PATH_INFO"] == "/foo/bar" $_SERVER["QUERY_STRING"] == "foo=bar" Actual result: -------------- $_SERVER["REQUEST_URI"] == "/admin/phpinfo.php/foo/bar?foo=bar" (correct) $_SERVER["PHP_SELF"] == "\admin\phpinfo.php" (incorrect) $_SERVER["SCRIPT_NAME"] == (not set) $_SERVER["PATH_INFO"] == "/foo/bar" (correct) $_SERVER["QUERY_STRING"] == "foo=bar" (correct) -- Edit bug report at https://bugs.php.net/bug.php?id=60180&edit=1 -- Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=60180&r=trysnapshot54 Try a snapshot (PHP 5.3): https://bugs.php.net/fix.php?id=60180&r=trysnapshot53 Try a snapshot (trunk): https://bugs.php.net/fix.php?id=60180&r=trysnapshottrunk Fixed in SVN: https://bugs.php.net/fix.php?id=60180&r=fixed Fixed in SVN and need be documented: https://bugs.php.net/fix.php?id=60180&r=needdocs Fixed in release: https://bugs.php.net/fix.php?id=60180&r=alreadyfixed Need backtrace: https://bugs.php.net/fix.php?id=60180&r=needtrace Need Reproduce Script: https://bugs.php.net/fix.php?id=60180&r=needscript Try newer version: https://bugs.php.net/fix.php?id=60180&r=oldversion Not developer issue: https://bugs.php.net/fix.php?id=60180&r=support Expected behavior: https://bugs.php.net/fix.php?id=60180&r=notwrong Not enough info: https://bugs.php.net/fix.php?id=60180&r=notenoughinfo Submitted twice: https://bugs.php.net/fix.php?id=60180&r=submittedtwice register_globals: https://bugs.php.net/fix.php?id=60180&r=globals PHP 4 support discontinued: https://bugs.php.net/fix.php?id=60180&r=php4 Daylight Savings: https://bugs.php.net/fix.php?id=60180&r=dst IIS Stability: https://bugs.php.net/fix.php?id=60180&r=isapi Install GNU Sed: https://bugs.php.net/fix.php?id=60180&r=gnused Floating point limitations: https://bugs.php.net/fix.php?id=60180&r=float No Zend Extensions: https://bugs.php.net/fix.php?id=60180&r=nozend MySQL Configuration Error: https://bugs.php.net/fix.php?id=60180&r=mysqlcfg