我有一個情況,我有2個文件,File A
和File B1
。然後我有20個其他腳本,包括這些文件。文件A包含一些在文件B中實例化的類。當使用php包含文件時變量的範圍
如果一個變量在文件A中的類內發生更改,它將更改爲所有20個腳本?
我有一個非常奇怪的問題,其中的東西正在更新,當我把一些調試代碼的每個點,該變量被更改,它不會觸發。這是問題的原因,因爲它似乎像其他19個文件,包括這些是造成變化的一個...
澄清:
我不包括文件不止一次。我有20個不同的腳本單獨運行,包括SAME文件(只做一次)。這是因爲我只需要在更改1個文件時更新所有其他文件並使用該文件。如果在一個文件中的類中更改了公共變量,是否更改了所有20個文件。
THanks。
因此,如果腳本1更改文件A中的變量,那麼腳本20將在包含文件A時看到該新值? – webnoob 2011-04-01 21:03:34
嗯,不,你不應該多次使用include_once()或require_once()包含一個文件,不管它多少次被調用,它都只包含一次文件。但讓我們說你有FileA,看起來像'$ a = 2; include_once( 'FILEB'); include_once('FileC');'和'FileB'做'$ a = 5;'和FileC做'echo $ a',那麼輸出就是'5'。基本上,一個包含/必需的文件就像是如果你在該包含文件中採用了該代碼或其他文件,並將其真正複製/粘貼到包含include()調用點的文件中。 – Phoenix 2011-04-02 02:10:11
我不認爲我清楚我的包裝。我不是多次包含一個文件。我有20個不同的腳本單獨運行,包括SAME文件(只做一次)。這是因爲我只需要在更改1個文件時更新所有其他文件並使用該文件。如果全局變量在該ONE文件內發生更改,是否更改了全部變量?對不起,如果不明確。 – webnoob 2011-04-06 10:00:55