现有 PHP 数组如下:
$arr = array(
'name'=> '李四',
'sex'=> '女'
);
控制器里要输出 json 数据,通常是用return方法:
return json($arr);
但是现在我的控制器a要继承一个公共控制器b,假设公共控制器 b 有test()方法,在这个方法里要输出 json 数据,如:return json($arr);
我现在要在控制器 a 里调 test() 方法,这时候return 就不会输出数据,只是返回数据
如果要在 test() 方法里输出 json 数据,怎么写?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
echo json_encode($arr);TP3可以使用thinkphp内置的方法 $this->ajaxReturn($data); 不用return。TP5可以用$this->response();返回json数据。
tp5里面有个助手函数json(),直接return json($array)就可以了
不是很明白你想实现的意思:
建控制器common 和 index
common代码如下
直接访问index/common/test是可以访问json格式的。
也可以用子代访问如下:
index如下
a调用b->test(),想在b->test()直接输出是不可能的。php会先在a得到b的返回值。除非你直接b->test()函数里面直接exit,不然不可能实现