簡體   English   中英

Laravel 通過表單傳遞 0 作為值並獲得 null

[英]Laravel passing 0 as value through form and getting null

所以我有一個帶有選擇輸入的簡單表單,它有一個值為 "0" 的選項:

<form method="post" action="{{ action('Something@something') }}">
    <select name="status">
           <option selected value="0">Bla bla bla</option>
    </select>
    <button type="submit">Press me</button>
</form>

發生錯誤,當我從選擇輸入和控制器中選擇唯一選項時,我得到空而不是“0”數字(我確實使用 dd() 方法進行了檢查)。 這個數字是否有可能在集成中間件或其他地方丟失? 或者這是一個PHP技巧?

好的,答案是在我的中間件中我有這個代碼:

public function handle($request, Closure $next)
{
    if (!Auth::check()) {
        return redirect('/blablabla');
    }

    foreach ($request->input() as $key => $value) {
        if (empty($value)) {
            $request->request->set($key, "");
        }
    }

    return $next($request);
}

問題在於empty($value) 我將empty()改為!isset()並且一切都修復了

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM