我在 Joomla 应用程序中使用 jQuery 小部件。小部件的数据必须是一个对象并采用 json 格式。当我在没有 Joomla 框架的数据库功能的情况下直接从数据库中检索数据时,我能够实现这一点。
当然,我确实想在 Joomla MVC 结构中进行,并且我想利用 Joomla 数据库功能。这样做时,小部件中没有输出。
我之前有这个,当作为数组传递时,它不显示数据,当作为对象传递时,它会显示。
我的问题是这样的:直接从数据库生成数据并使用 Joomla 数据库结构在回显到屏幕时会产生完全相同的结果,但一个显示在网格中,另一个不显示。我之前遇到的问题也是这种情况,但在那种情况下,我对相同的数据调用了 json_encode 两次,但显示的数据绝对没有区别,但一个有效,另一个无效。
我的问题:我对 JSON 数据还不是很熟悉,但是有没有办法检查数据是表示为对象还是数组?这可能是一个非常愚蠢的问题,但在我看来,数据肯定存在差异,仅通过查看它,您就看不到它,还是我遗漏了什么?
更新: 感谢您的回复。我已经坐了好几天了!!它现在正在使用 Joomla 数据库函数,除了 json 编码之外,我的代码似乎存在一个小问题,但是当我之前在模型和控制器中使用 json_encode 时,它们看起来就像这样,因此双 json 编码它,它不起作用,但是当在 Joomla 之外生成时,它起作用了(单次使用 json_encoding)。查看它们在 Joomla 之外生成并经过双重 json 编码后,两者看起来都一样,因此我在查看输出时找不到问题,与现在相同。
感谢您提供有关[]
and的信息{}
,这很有见地,但这是我的代码示例:
[{"TotalRows":2,"Rows":[{"login_id":"122","cust_id":"0","shop_id":"0","nickname":null,"shopicon":null,"website":null,"shopname":null, "username":"","password":"","dob":"0000-00-00","comments":null},
{"login_id":"25","cust_id":"57","shop_id":"42","nickname":"qwerty","shopicon":"shop.ico","website":"http:\/\/www.shop.co.uk","shopname":"Shop","username":"eqweq","password":"wqewqeq","dob":"1981-12-14","comments":"qwqeqeqw"}]}]
我如何判断它是数组还是对象?