Laravel控制器中的自定义计算

时间:2018-12-03 20:27:28

标签: php laravel laravel-5 laravel-controller

我是Laravel的新手。我正在构建一个小型应用程序,用于显示数据库中的用户表,但是在将其发送到视图之前,我想包含另一个函数的自定义值。

accounts表从MySQL提取帐户列表,我想包含一个自定义函数getStatus(),该函数是从API获取的。

代码

<?php

public function accounts()
{
    $accounts = DB::table('accounts')
        ->where('profile_id', '=', Auth::id())
        ->get();

    foreach ($accounts as $account) {

        $account->status = getStatus($account->accno);
    }

    $data = compact('accounts');

    return view::make('transactions', ['accounts' => $data]);
}

查看

@foreach ($accounts as $account)
    <tr>
        <td></td>
        <td>{{ $account->login }}</td>
        <td>{{ $account->status }}</td>
    </tr>
@endforeach

2 个答案:

答案 0 :(得分:0)

您可以这样做。

$accounts = $accounts->map(function($account){
   $account->status = getStatus($account->accno)
});

希望这会对您有所帮助。

谢谢

答案 1 :(得分:0)

$accounts = DB::table('accounts')
    ->where('profile_id', '=', Auth::id())
    ->get()
    ->map(function($item){
       $item->status = getStatus($item->accno);
       return $item;
    });

现在,您将在$accounts中拥有状态。