我正在使用執行foo.php
的Python腳本,我希望Python腳本知道PHP調用源自哪個目錄。在這個例子中,它應該是:/www/includes
Python腳本如何知道調用它的PHP文件的路徑?
# File tree
/script.py
/www/index.php
/www/includes/foo.php
foo.php
var_dump(exec("/usr/bin/python /script.py"));
script.py
#!/usr/bin/env python
import os
print(os.getcwd())
我發現os.getcwd()
的偉大工程時,foo.php
URL直接在一個名爲瀏覽器。我得到期望的結果:/www/includes
然而,不起作用時foo.php
正在從另一個PHP文件調用不同的目錄,如/www/index.php
。
的index.php
require_once '/www/includes/foo.php';
的Python腳本打印/www
,因爲這是index.php
生活。
問題
我怎樣才能得到,當它通過foo.php
執行foo.php
是無論怎麼被調用的Python腳本返回/www/includes
?我嘗試了一些traceback
方法,但沒有運氣,因爲我認爲它只適用於跟蹤錯誤。
你不能。 'include()'在php中的作用就好像被包含的文件的內容被切割並粘貼到執行include的文件中。實際上你的'foo.php'是index.php的一部分 –
謝謝MarcB。這非常有見地。 –