Php 来自MySQL结果的JSON对象
据我所知,在对服务器端(PHP)进行Ajax调用时,可以指定调用将允许的数据类型。我经常看到这是一个JSON对象 这个Ajax调用还可以指定其他对象类型吗Php 来自MySQL结果的JSON对象,php,javascript,mysql,ajax,json,Php,Javascript,Mysql,Ajax,Json,据我所知,在对服务器端(PHP)进行Ajax调用时,可以指定调用将允许的数据类型。我经常看到这是一个JSON对象 这个Ajax调用还可以指定其他对象类型吗 这很有意义,因为JSON是用于Javascript的,所以它希望其数据采用相应的格式,但为什么不直接使用获取的查询结果对象,就像它在PHP视图上所做的那样 由于AJAX调用是由一个javascript函数(不是吗?)触发的,并且结果将返回到一个javascript回调函数,因此您正在使用javascript(在客户端) 您可以返回JSON、纯
这很有意义,因为JSON是用于Javascript的,所以它希望其数据采用相应的格式,但为什么不直接使用获取的查询结果对象,就像它在PHP视图上所做的那样 由于
AJAX
调用是由一个javascript函数(不是吗?)触发的,并且结果将返回到一个javascript回调函数,因此您正在使用javascript(在客户端)
您可以返回JSON、纯文本、XML。。。但是,您必须关心您使用的是什么格式,在这一点上,JSON是IMHO的最佳选择。因为
AJAX
调用是由javascript函数触发的(不是吗?),并且结果将返回到您使用javascript的javascript回调函数(在客户端)
您可以返回JSON、纯文本、XML。。。但是你必须关心你使用的是什么格式,在这一点上,JSON是IMHO的最佳选择。JavaScript和PHP使用原始数据通过HTTP相互通信(你可以把它们看作纯文本字符串)。任何数据转换都由语言解释器在接收原始数据时处理。因此,即使看起来您在来回传递JavaScript对象,实际上您只是在传递JSON格式的字符串,您的JavaScript库可能正在自动解析它们 PHP只能通过发送原始数据从HTTP请求返回数据,这通常会导致字符串转换。假设您有一个查询结果对象--您将执行以下操作:
echo $result_object
这可以是任何东西;也许它会呼应出“Object(#1Result)”——或者不管对象的toString方法是什么。这在JavaScript方面不是很有用
我不确定你说的PHP视图是什么意思,但我认为你有某种模板引擎。这是用PHP编写的,可以对PHP对象本身进行操作,以获得需要以某种格式(可能是HTML)发出的数据
如果你的问题是,为什么使用JSON而不是HTML更好——不管你选择什么,都有很多优点和缺点。JSON通常是一个很好的选择,因为它体积小、简单。如果您想实际显示原始HTML,只需发送HTML,而不是在客户端上从JSON重新创建HTML,可能会更容易。JavaScript和PHP通过HTTP通过原始数据相互通信(您可以将它们视为纯文本字符串)。任何数据转换都由语言解释器在接收原始数据时处理。因此,即使看起来您在来回传递JavaScript对象,实际上您只是在传递JSON格式的字符串,您的JavaScript库可能正在自动解析它们 PHP只能通过发送原始数据从HTTP请求返回数据,这通常会导致字符串转换。假设您有一个查询结果对象--您将执行以下操作:
echo $result_object
这可以是任何东西;也许它会呼应出“Object(#1Result)”——或者不管对象的toString方法是什么。这在JavaScript方面不是很有用
我不确定你说的PHP视图是什么意思,但我认为你有某种模板引擎。这是用PHP编写的,可以对PHP对象本身进行操作,以获得需要以某种格式(可能是HTML)发出的数据
如果你的问题是,为什么使用JSON而不是HTML更好——不管你选择什么,都有很多优点和缺点。JSON通常是一个很好的选择,因为它体积小、简单。如果您想实际显示原始HTML,只需发送HTML,而不是在客户端上从JSON重新创建HTML,可能会更容易。您将如何通过HTTP传递数组?哪种格式?谁来解码这种格式?“因为JSON是用于Javascript的”-实际上不是,尽管它可以与JS一起使用。更准确地说,它是受JavaScript启发的;这是一种基于字符串的数据传输格式,适用于大多数语言。感谢您的输入。我从它的名字开始就认为它是用于javascript的。那么如何通过HTTP传递数组呢?哪种格式?谁来解码这种格式?“因为JSON是用于Javascript的”-实际上不是,尽管它可以与JS一起使用。更准确地说,它是受JavaScript启发的;这是一种基于字符串的数据传输格式,适用于大多数语言。感谢您的输入。我从它的名字就猜它是用于javascript的。谢谢。我所说的PHP视图是指在表示层中回显结果。谢谢。我所说的PHP视图是在表示层中回显结果。