我需要從後臺運行的主腳本調用php腳本(我只是想調用並繼續而不等待響應) 但我需要訪問用戶會話在調用腳本在會話訪問的背景下運行php腳本
2
A
回答
2
我的建議是不要使用默認的PHP會話,因爲它可能會非常棘手與後臺進程的工作....我會建議session_set_save_handler
http://www.php.net/manual/en/function.session-set-save-handler.php爲DB基地會議
這裏有一個很好的例子http://www.php.net/manual/en/function.session-set-save-handler.php#96305
-1
$_COOKIE['PHPSESSID'] = 'user_session_id';//Transfer parameters through $GLOBALS['argv']
session_start();
0
呼叫
string file_get_contents (string $filename [, bool $use_include_path = false [, resource $context [, int $offset = -1 [, int $maxlen ]]]])
與$的maxlen = 0;
在文件名中,你可以給網址。在該URL中傳遞會話ID並在被調用的腳本中使用session_id()設置會話ID,然後調用session_start()。
確保調用腳本使用flush()和ob_flush()返回至少520個虛擬字符,以便調用腳本不會等待。
0
「會話」背後的要點是用戶客戶端可以以「無狀態」方式多次連接到服務器,但仍像「單一連接」一樣保持「狀態」。 「會話」數據在來自同一用戶客戶端的多個連接之間共享。
當您在服務器上產生後臺進程時,無論您是否使用PHP,「會話」不再有任何實際意義。用戶甚至可能會關閉他的客戶端機器,而不會影響服務器後臺進程。
考慮到這一點,使用其他地方建議的Cookies完全沒用。 Cookies保存在客戶端機器上,後臺進程將對其進行零訪問。
如果有後臺進程需要的客戶端信息,那麼調用進程需要以某種方式將它傳遞給後臺進程,無論是作爲某種參數還是某種數據文件。
我建議將「$ _SESSION」變量作爲Json編碼的數據字符串保存到臨時文件中。後臺進程可以讀取該文件,Json-將其解碼回數組,然後像使用$ _SESSION一樣使用它。然後刪除臨時文件。
相關問題
- 1. 在codeigneitor的背景下運行腳本?
- 2. 在CGI背景下運行python腳本
- 3. 訪問ASP.NET會話的背景
- 4. 在燒瓶中運行腳本背景
- 5. 有python腳本在unix的背景下運行
- 6. 在背景上連續運行Php腳本
- 7. 與運行bash腳本週期背景
- 8. PHP腳本不會運行
- 9. PHP腳本不會運行
- 10. 在PHP命令行中訪問會話?
- 11. php腳本在Ubuntu的背景
- 12. 從php頁面運行背景紅寶石腳本
- 13. PHP在會話過期時運行一個腳本
- 14. 在已經運行的MATLAB會話上運行MATLAB腳本
- 15. 在接口的背景下運行matlab
- 16. PHP登錄腳本會話問題
- 17. 無法在Tomcat下運行PHP腳本
- 18. SQLCMD會話運行SQL腳本
- 19. 會話結束時運行腳本
- 20. 如何在同一個PHP腳本中訪問兩個不同的PHP會話?
- 21. 從php腳本訪問cakephp會話變量?
- 22. CURL問題。 PHP腳本沒有在通話中運行
- 23. 如何在用於運行腳本的腳本中訪問taglib?
- 24. 在沒有cronjobs的背景下運行繁重的php文件
- 25. 背景Chrome瀏覽器會話問題
- 26. PostgreSQL的背景會話
- 27. CentOS的啓動背景PHP腳本
- 28. 如何在另一個php腳本(如更新按鈕)的背景中運行php腳本
- 29. 你如何編寫腳本ssh然後背景會話?
- 30. 是否跨運行腳本共享一個PHP會話變量?
爲什麼你沒有訪問該腳本中的用戶會話? –
如果我通過使用wget調用system()調用腳本,我再也無法訪問特定的會話。 – mgalesic