计算Laravel中两个输入的百分比

时间:2019-05-03 14:56:29

标签: php laravel percentage

我想计算两个输入的总分数和获得分数的百分比。当用户填写这两个输入时,然后在百分比字段中我要自动显示百分比。我没有基本的想法。下面是我的控制器

/** MyController.php */

public function store(ReportRequest $request)
{
    $input = $request->all();

    if ($file = $request->file('photo_id'))
    {
        $name = time() . $file->getClientOriginalName();
        $file->move('images', $name);
        $photo = Photo::create(['file'=>$name]);
        $input['photo_id'] = $photo->id;
    }

    Report::create($input);

    return redirect()->back();
}

1 个答案:

答案 0 :(得分:1)

您可以在with open(file, 'rb') as stream: stream.seek(0x6b0c67) data = stream.read(12) 模型类中创建一个computed Accessor attribute

Request

因此,当您创建记录时..您可以使用以下属性:

/** Request.php */

public function getMarksPercentageAttribute
{
    return (float) $this->obtained_marks / $this->total_marks;
}

PS:我假设$request = Request:first(); dd($request->marks_percentage); // 0.35 for example total_marks是表的列。如果这不是正确的名称,请将其替换为您实际使用的名称。


注意,在创建元素之后,您将返回..例如,您可以重定向到obtained_marks视图。来自docs

  

重定向到命名路由

     

在不带参数的情况下调用show帮助器时,   返回redirect,让您可以拨打任何电话   Illuminate\Routing\Redirector实例上的方法。例如,要生成一个   Redirector到命名路由,则可以使用RedirectResponse方法:

route
     

如果您的路线具有参数,则可以将其作为第二个参数传递   转到路由方法:

return redirect()->route('login');