有没有像node.js那样将对象从php传递到javascript的方法
我正在尝试将node.js中编写的应用程序移植到客户端的php,我需要知道是否有一种方法可以将对象从php传递到javascript,如下所示:有没有像node.js那样将对象从php传递到javascript的方法,php,node.js,Php,Node.js,我正在尝试将node.js中编写的应用程序移植到客户端的php,我需要知道是否有一种方法可以将对象从php传递到javascript,如下所示: <script> var a = <%- instance %>; a.someMethod(); </script> 变量a=; a、 somethod(); 您可以简单地执行此操作 <script> var a = <? = $phpvar;?>; a.some
<script>
var a = <%- instance %>;
a.someMethod();
</script>
变量a=;
a、 somethod();
您可以简单地执行此操作
<script>
var a = <? = $phpvar;?>;
a.someMethod();
</script>
变量a=;
a、 somethod();
编辑:无需担心。我误读了,认为您的意思是“变量”而不是对象。您可以使用json将数据从PHP传递到JS 可能是这样的事情: php 在你看来
最好的办法是先将数据编码为JSON格式 你的数据
$data = array(
"foo" => "bar",
"hello" => "world"
);
你的剧本
<script>
var data = JSON.parse(<?php echo json_encode($data) ?>);
</script>
您的PHP服务器必须对此路由作出响应
// response to /api/people.json
header("Content-type: application/json");
var $data = array(
"foo" => "bar",
"hello" => "world"
);
echo json_encode($data);
exit;
JavaScript控制台输出
{foo: "bar", hello: "world"}
不,我不认为你能。你想在var中输入什么?你主要是在问如何将一个PHP对象作为JSON数据转储,以便在客户端的javascript中使用它吗?我真正需要做的是使用.someMethod()来实现它的价值,一个node.js应用程序很难移植到像PHP这样死板的东西上或者更好:
代码>但仍然不起作用。如果你对答案不满意/不认为它有建设性,你可以删除你的答案,等等。我是新来的。我该如何删除它?我只看到共享/编辑/标记。谢谢。值得注意的是,这不允许您在该对象上调用PHP方法-它是在JSON.parse
之后的JS对象,JS不知道您的PHP对象或其方法。@chesles您是对的!但是,如果他只是想传递数据,它是有效的:)我可以通过将对象编码成json格式来使用对象中的方法吗?如果需要在JavaScript中调用对象上的方法,则需要“远程过程调用”(或RPC)。如果您不熟悉这些概念,它们会有一点学习曲线,但您可能希望从PHP的原生支持开始
<script>
var data = JSON.parse(<?php echo json_encode($data) ?>);
</script>
// using (e.g.,) jquery
var loadPeople = function(data) {
console.log(data);
};
$.getJSON('/api/people.json').done(loadPeople);
// response to /api/people.json
header("Content-type: application/json");
var $data = array(
"foo" => "bar",
"hello" => "world"
);
echo json_encode($data);
exit;
{foo: "bar", hello: "world"}