如何得到有效的JSON响应

如何得到有效的JSON响应

问题描述:

我得到的一些值的无效响应,我想它在双引号像其他回应我的回应是:如何得到有效的JSON响应

{

"status": "true", 
"message": "User Logged-in Successfully!", 
"dataArray": { 
    "id": 110, 
    "contacts_id": 12, 
    "email": "[email protected]", 
    "companyID": 2, 
    "isDeleted": "N", 
    "isActive": "Y", 
    "Lastlogin": "0000-00-00 00:00:00", 
    "memberTypeID": 2, 
    "pricing_plan_id": 1, 
    "can_trail": "Y", 
    "first_login": "Y", 
    "confirmation": "Y", 
    "created_at": "2016-06-14 13:30:31", 
    "updated_at": "2016-06-14 13:31:11" 
} 

}

我们可以看到我在contacts_id中有无效的响应,这在12中很简单,它应该像双引号一样使用其他值

和我的控制器代码响应来自何处:

public function userlogin(Guard $auth, Request $request) 
{ 

    $isVerified = $auth->attempt($request->only('email', 'password'), true); 
    if ($isVerified) { 
     $user = $auth->user()->toArray(); 
     $responseToReturn = [ 
      'status' => 'true', 
      'message' => 'User Logged-in Successfully!', 
      'dataArray' => $user 
     ]; 
     return Response::json($responseToReturn, 200); 

    } else { 
     $responseToReturn = [ 
      'status' => 'false', 
      'message' => 'Invalid Email/Password', 
     ]; 
     return Response::json($responseToReturn, 200); 
    } 
} 

我只是想在双引号我怎么能做到这一点

你可以用你的口才模型或attribute casting内变异符我的价值观。

您的模型上的$ casts属性提供了一种便利的方法 将属性转换为常用数据类型。

在你的情况,你应该做到以下几点:

class User extends Model { 
    ... 
    protected $casts = [ 
     'companyID' => 'string', 
     'memberTypeID' => 'string', 
     ... 
    ]; 
    ... 
} 

如果你不想用雄辩的模型,你可以创建一个这样的帮手:

class MyHelper extends Helper 
{ 
    public static function respondWithStrings($arr, $code = 200) 
    { 
     return response()->json(
      array_map('strval', $arr), 
      $code 
     ); 
    } 
} 

并随时随地使用它。例如:

class MyController extends Controller { 

    public function index() 
    { 
     $array = [ 
      'example' => 1, 
     ]; 

     return MyHelper::respondWithStrings($array); 
    } 
} 
+0

如果我不想使用该模型我怎么能从控制器做到这一点 –

+0

看到我的新答案,希望它有帮助。 –