将PHP对象传递给ajax PHP脚本

时间:2013-06-21 02:13:57

标签: php javascript json oop serialization

如何将在初始页面加载期间创建的PHP对象传递给ajax调用?

create-page.php创建我的页面并有一个对象expensiveObject。我需要将expensiveObject传递给ajax-some-stuff.php

选项1:我应该json_encode()对象,将它附加到我的URL,用javascript抓取我的URL部分,然后将其发送回PHP ajax?

选项2:我可以将其存储为$ _SESSION变量吗?

2 个答案:

答案 0 :(得分:1)

我会将其保存在$_SESSION中,因为这会阻止您通过互联网发送数据,而互联网应仅在服务器上处理。会出现安全问题以及性能问题。

__sleep()

中保存时,您可能需要实施__wakeup()$_SESSION,具体取决于您的对象

答案 1 :(得分:0)

我想使用选项1但是在json_encode函数之后我会用base64_encode再次包装它,因为json_encode仍然不是URL安全的字符串。

$ _SESSION方法简单易用,但取决于您的对象。如果我没有弄错的话,$ _SESSION可以在那里存储最大数据量。 - 如果您是服务器端会话,您的服务器内存将被消耗 - 使用cookie作为会话替换将限制数据大小