Controller.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. namespace App\Http\Controllers;
  3. use Illuminate\Foundation\Bus\DispatchesJobs;
  4. use Illuminate\Routing\Controller as BaseController;
  5. use Illuminate\Foundation\Validation\ValidatesRequests;
  6. use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
  7. class Controller extends BaseController
  8. {
  9. use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
  10. //成功返回
  11. public function success($data,$msg="ok")
  12. {
  13. $this->parseNull($data);
  14. $result = [
  15. "code"=>200,
  16. "msg"=>$msg,
  17. "data"=>$data,
  18. ];
  19. return response()->json($result,200);
  20. }
  21. //成功返回带数量
  22. public function success_list($data,$msg="ok",$total=0){
  23. $this->parseNull($data);
  24. $result = [
  25. "code"=>200,
  26. "msg"=>$msg,
  27. "data"=>[
  28. 'total'=>$total,
  29. 'list'=>$data
  30. ],
  31. ];
  32. return response()->json($result,200);
  33. }
  34. //失败返回
  35. public function error($code="422",$msg="fail",$data=""){
  36. $result = [
  37. "code"=>$code,
  38. "msg"=>$msg,
  39. "data"=>$data
  40. ];
  41. return response()->json($result,200);
  42. }
  43. //如果返回的数据中有 null 则那其值修改为空 (安卓和IOS 对null型的数据不友好,会报错)
  44. private function parseNull(&$data){
  45. if(is_array($data)){
  46. foreach($data as &$v){
  47. $this->parseNull($v);
  48. }
  49. }else{
  50. if(is_null($data)){
  51. $data = "";
  52. }
  53. }
  54. }
  55. }