ID: 15793 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Status: Open Bug Type: Scripting Engine problem Operating System: Solaris 8 PHP Version: 4.1.2 New Comment:
I'm experiencing the exact same problem, and it's making horde/imp a no-go. The new horde 2.0 and imp 3.0 is using __FILE__ everywhere in the code, and due to this bug it just won't work without modifying a lot of the code. /pb Previous Comments: ------------------------------------------------------------------------ [2002-02-28 16:00:08] [EMAIL PROTECTED] __FILE__ constant behaviour in PHP seems to have some problems that are Solaris specific, and some problems that are just general. Put the following in a file "test.php": <?php echo "file " . __FILE__; ?> Try: php test.php The expected result is: file <path to test.php>/test.php The result on both Linux and Solaris PHP is: file test.php Now call the same php script VIA the web. The result will be the expected "file <path to test.php>/test.php" on both Linux and Solaris. If this isn't a bug, it seems like maybe an inconsistency in PHP behaviour under different operating modes. However, the problems continue. Change the original test.php script above to: <?php echo "file " . __FILE__ . " "; require_once './tmp/test1.php'; ?> And in tmp/test1.php put the following: <?php echo "file " . __FILE__; ?> Access test.php VIA the web. I expect to see: file /cs/home/jas/www//test.php file /cs/home/jas/www/tmp/test1.php On Linux that's what you'll see. On Solaris, I see: file /cs/home/jas/www/test.php file /tmp/test1.php If I specify a full path to "tmp/test1.php" -- /cs/home/jas/www/tmp/test1.php, then the result is as expected. What's going on with __FILE__? Am I misunderstanding its use? ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=15793&edit=1