【问题标题】:How to access to Laravel response如何访问 Laravel 响应
【发布时间】:2018-06-25 09:08:24
【问题描述】:

我将 API 用于信用卡验证器,并在 Controller 上编写代码:

dd($ChargeResponse);

我得到了这些数据:

如何访问这个对象?

我尝试: $ChargeResponse->_email 但不工作...

更新: 控制器:

$CardTokenChargePayload->setEmail($request->email);
$CardTokenChargePayload->setAutoCapture('N');
$CardTokenChargePayload->setAutoCaptime('0');
$CardTokenChargePayload->setValue('10000');
$CardTokenChargePayload->setCurrency('usd');
$CardTokenChargePayload->setTrackId('Demo-0001');
$CardTokenChargePayload->setCardToken($data['cko-card-token']);
try {
    /** @var RequestModels\CardTokenChargeCreate $CardTokenChargePayload **/
    $ChargeResponse = $charge->chargeWithCardToken($CardTokenChargePayload);
    //$ChargeResponse = json_encode($ChargeResponse);
    return collect($ChargeResponse);

} catch (checkout\helpers\ApiHttpClientCustomException $e) {
    echo 'Caught exception Message: ',  $e->getErrorMessage(), "\n";
    echo 'Caught exception Error Code: ',  $e->getErrorCode(), "\n";
    echo 'Caught exception Event id: ',  $e->getEventId(), "\n";
    return response()->json(['code' => '2000', 'message' => $e->getErrorMessage()]);
}

【问题讨论】:

  • 或如何转换为 Laravel Eloquent 对象?
  • 显示你的控制器代码
  • 我发布控制器代码...
  • “如何访问这个对象?”从哪里来?!
  • 我需要访问 $ChargeResponse->email 和类似的但如何...

标签: json laravel eloquent response


【解决方案1】:

首先,“对象”并不是真正的对象,是一个数组。所以你可以这样称呼你的道具:

$ChargeResponse['_emai']

但是,如果您想对其进行转换并使用 Collections,您可以这样做:

$ChargeResponse = collect($ChargeResponse);

然后你可以使用

$ChargeResponse->_email

【讨论】:

  • hm,不,我遇到了致命错误:无法使用 com\checkout\ApiServices\Charges\ResponseModels\Charge 类型的对象作为 C:\wamp\www\dine\app\Http\Controllers\ 中的数组第 77 行的 CheckoutController.php
  • 你能做一个 var_dump($ChargeResponse) @AleksPer
  • @AleksPer img 被剪掉了
  • 该属性受到保护。没有 getter 就无法访问受保护的属性。
  • 您可以更新Charge.php 类并为该属性创建一个getter
猜你喜欢
  • 1970-01-01
  • 2010-09-20
  • 2021-08-13
  • 1970-01-01
  • 2017-04-12
  • 2021-07-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多