【问题标题】:Building a PHP JavaScript App [closed]构建 PHP JavaScript 应用程序 [关闭]
【发布时间】:2014-07-15 15:40:03
【问题描述】:

我正在构建一个 PHP JavaScript 网络应用程序。我主要关心的是如何用 PHP 缝合 JS。例如;我在后端定义了一些 PHP 类,并在第一页加载时实例化了一些对象;显然 JS 对它们一无所知。当我对没有引用对象的 php 文件进行 Ajax 调用时,如何访问已经实例化的对象,而不是再次重新实例化。将对象存储在会话中是否是一种好习惯?此类场景是否有“最佳实践”?

【问题讨论】:

  • php 是一个无共享架构——请求之间不共享内存,请求结束时所有变量都被销毁。如果需要,您可以使用某种缓存
  • 你想用php创建类似phonegap的应用吗?
  • 不是手机应用,而是网络应用。对不起,如果我不清楚。

标签: javascript php ajax object


【解决方案1】:

PHP 是服务器端,JS 是客户端。所以 JS 无法访问 PHP 变量、函数、对象等。此外,PHP 是无状态的,这意味着请求之间没有联系。默认情况下请求完成后一切都消失了,但是有几种方法可以在多个请求中存储对象或数据,包括:

  • 您可以使用$_SESSION 来存储数据或对象。
  • 对于单个请求的数据,您可以使用$_GET$_POST
  • 您可以使用 javascript 存储数据,例如 localStorage

【讨论】:

  • 没关系。这是你必须做出的选择。或者您再次查询每个请求的数据,或者您将对象存储在 SESSION 中,因此您只需要查询一次。在 SESSION 中存储对象没有任何问题。它被放置在世界上来存储数据!
【解决方案2】:

你说你正在构建一个 PHP JavaScript 应用程序。

我读到的内容:“我不知道这些词是什么意思,但听起来很酷。”

PHP 是一种服务器端语言。正如在其中一个 cmets 中所写的那样。它是一种无共享架构。对象、变量……只有在请求持续的时候才会存在。一旦请求结束,一切都将被销毁。

请求(通常)以答案结束。通常是 HTML 或 JSON。该 HTML 包含一些由客户端浏览器解释的 Javascript。它与PHP无关。它甚至不必知道服务器正在使用 php。

其上的 JavaScript 可以使用 AJAX 调用与服务器通信。然后解析查询并返回结果。等等

【讨论】:

    猜你喜欢
    • 2013-03-05
    • 1970-01-01
    • 2016-11-10
    • 1970-01-01
    • 2012-12-29
    • 2012-11-15
    • 2012-12-24
    • 2012-11-21
    • 1970-01-01
    相关资源
    最近更新 更多