2014-07-15 34 views
-4

構建PHP JavaScript web應用程序。我主要關心的是如何使用PHP來拼接JS。例如;我在後端定義了一些PHP類,並在第一頁加載時實例化了一些對象;顯然JS對他們不瞭解。當我對一個沒有引用對象的php文件進行Ajax調用時,如何訪問已經實例化的對象,而不是再次重新實例化。也許是在會話中存儲對象的好習慣嗎?對於這樣的情景有沒有「最佳實踐」?構建PHP JavaScript應用程序

+0

php是一個沒有共享的架構 - 內存不在請求之間共享,所有變量在請求結束時被破壞。如果需要,您可以使用某種緩存 – Steve

+0

您是否想使用php創建類似phonegap的應用程序? – Bik

+0

沒有電話應用程序,而是一個網絡應用程序。對不起,如果我不清楚。 – ecorvo

回答

0

PHP是服務器端,JS是客戶端。所以JS無法訪問PHP變量,函數,對象等。除此之外,PHP是無狀態的,這意味着請求之間沒有連接。請求默認情況下完成這一切之後走了,但有幾個方法來存儲對象或數據在多個請求,包括:

  • 您可以使用$_SESSION存儲數據或對象。
  • 對於單個請求中的數據,您可以使用$_GET$_POST
  • 您可以使用javascript存儲數據,例如localStorage
+0

沒關係。這是你必須做出的選擇。或者您再次查詢每個請求的數據,或者將對象存儲在SESSION中,因此只需查詢一次即可。在SESSION中存儲對象沒有任何問題。它放在世界上存儲數據! –

0

你說你正在構建一個PHP JavaScript應用程序。

我讀到:'我不知道這些詞的意思,但它們聽起來很酷。'

PHP是一種服務器端語言。正如其中一條評論所寫。這是一個無分享架構。只要請求持續,對象,變量......就一直存在。一旦請求結束,所有內容都將被銷燬。

該請求完成(通常)與答案。通常是HTML或JSON。這個HTML保存了一些在客戶端瀏覽器中解釋的Javascript。它與PHP無關。它甚至不需要知道服務器正在使用php。

JavaScript上它可以使用AJAX調用與服務器通信。然後解析查詢並返回結果。等等