2015-07-20 59 views
1

我想這是一個具體的問題,但由於某些原因,當我創建這樣一個主題:php - 無法從Thread中訪問全局變量?

​​

myotherfile.php中有聲明這兩個變量(他們可以從其他類訪問,但是我echo這裏的語句是打印DATA:,沒有其他的東西,我在類中做了全局變量找不到太多東西,但是我在其他類的函數中有這樣的全局聲明,並且它工作正常。 :這是我如何開始線程。

$stream = new StreamBufferInput(); 
$stream->start(); 
+0

也許run()方法是一個值之前調用實際上被設置爲變量? – Osuwariboy

+0

你在哪裏讀過可以從線程訪問全局變量的地方? –

+0

@Osuwariboy感謝您的回覆,我剛剛檢查過,情況並非如此 - 在線程啓動之前,包含帶有全局變量的文件。 – user3475234

回答

3

目前在PHP中這是不可能的。您不能從線程內部訪問線程外定義的全局範圍變量。但是,您可以使用Thread::globally在全局範圍內執行線程中的可調用函數,我相信這可以幫助您實現所需。

你可以閱讀一些更多關於這here