如何在laravel中将接收到的数据从数据库转换为字符串?

时间:2019-03-05 18:50:41

标签: laravel

因此,在一切之前,这不是重复的。

我有一个回调方法,该方法将从付款方式中获取2个参数。他们提供给我们的功能需要Amount来确保所有内容正确无误,并以他们将给我们付款状态的Amount为基础,但是他们不会发布它,我应该从我的数据库中获取它,我已经基于此代码进行了操作: / p>

public function order(Request $request){
    $MerchantID = 'xxxxxxxxxxx';
    $Authority =$request->get('Authority') ;

    $Amount = Invoice::select('invoice_balance')->where('authority',$Authority)->get();
    if ($request->get('Status') == 'OK') {
        $client = new nusoap_client('https://www.localhost.com/pg/services/WebGate/wsdl', 'wsdl');
        $client->soap_defencoding = 'UTF-8';
        $result = $client->call('PaymentVerification', [
            [
                'MerchantID'     => $MerchantID,
                'Authority'      => $Authority,
                'Amount'         => $Amount,
            ],
        ]);

        if ($result['Status'] == 100) {
            return 'Done.';

        } else {
            return 'Error with 1';
        }
    }
    else
    {
        return 'Error with 2';
    }
//        return $Amount;

}

当我使用此代码时,我得到The Response content must be a string or object implementing __toString(), "boolean" given.,我可以肯定它与Amount部分有关,因为当对Amount使用手动值($ Amount中的购物车的确切金额=金额)时,它将给我The Response content must be a string or object implementing __toString(), "boolean" given.错误。

我也尝试过其他问题,但没有成功。如果您删除了整个if(status...部分并仅返回$ Amount以确保它起作用,它将给[{"invoice_balance":"2000"}]我不知道这是否是我的错。请帮助我,我正在学习中。

发票模型(如果需要):

class Invoice extends Model   {
protected $fillable = [
    'from_user_id', 'to_user_id', 'invoice_title', 'invoice_description', 'invoice_balance', 'invoice_due_date', 'status'
];

protected $hidden = [
    'authority'
];
public function user()
{
    return $this->belongsTo(User::class);
}
}

2 个答案:

答案 0 :(得分:0)

解决方案正在改变

$Amount = Invoice::select('invoice_balance')->where('authority',$Authority)->get();

$Amount = Invoice::select('invoice_balance')->where('authority',$Authority)->value('authority');

答案 1 :(得分:0)

需要更多信息:

执行此操作,然后告诉我输出是什么

public function order(Request $request){
    dd($request->input());
}