将PHP对象传递给ajax PHP脚本

pass a PHP object to an ajax PHP script

本文关键字:PHP ajax 脚本 对象      更新时间:2023-09-26

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

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

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

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

我会将其保存在$_SESSION中,因为这将防止您通过互联网发送数据,这些数据应该只在服务器上处理。会有安全问题和性能问题。

你可能需要实现__sleep()__wakeup()取决于你的对象时,保存在$_SESSION

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

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