我个人理解:getcwd()会随着包含文件的改变而改变,而dirname(__FILE__)不会。即 getcwd() 表示获取当前执行文件的物理路径。
如 getcwd()显示:
/www/project/test/a.php echo getcwd(); //echo /www/project/test /www/project/b.php include_once(test/a.php); //echo /www/project
而dirname(__FILE__): /www/project/test/a.php echo dirname(__FILE__); //echo /www/project/test
/www/project/b.php include_once(test/a.php); //echo /www/project/test
a.php include b.php
b.php getcwd -> a所在目录
b.php dirname(__FILE__) -> b所在目录