Php 从symfony 2控制器操作返回数组

Php 从symfony 2控制器操作返回数组,php,symfony,Php,Symfony,响应内容必须是实现_toString()、给定“数组”的字符串或对象 这是我的密码 I need to return $items array from 'http://localhost:8000/cart/viewall' controller action. But all i get is this error. 如果有人能提供一个解决方案,那将非常有帮助。使用JsonResponse 例如: /** * @Route("/cart/viewall") * @Template()

响应内容必须是实现_toString()、给定“数组”的字符串或对象

这是我的密码

I need to return $items array from 'http://localhost:8000/cart/viewall'
controller action. But all i get is this error.

如果有人能提供一个解决方案,那将非常有帮助。

使用
JsonResponse

例如:

 /**
 * @Route("/cart/viewall")
 * @Template()
 */
public function viewallAction() {
    $items = array(1 => 'item 1', 2 => 'item 2');        
    return new Response($items);
}     

参见新JsonResponse($items)use…\JsonResponse你说的“我需要返回一个数组”是什么意思?Symfony中的控制器负责返回响应,因为HTTP响应包含一个仅为字符串的主体,所以您的响应必须包含一个要返回的字符串。你的意思是想返回一个JSON编码的数组吗?想想
新的响应
,比如调用
echo
。这是对浏览器的响应,必须是字符串。谢谢,我想我必须返回一个json数组。如何使用/cart/viewall的结果?Ajax还是什么?
$items = array(1 => 'item 1', 2 => 'item 2');
return new JsonResponse($items);