📜  laravel 表单 - PHP (1)

📅  最后修改于: 2023-12-03 15:32:36.072000             🧑  作者: Mango

Laravel 表单 - PHP

Laravel 是一个流行的 PHP 框架,它提供了简单、优雅和功能强大的方式来处理表单输入和验证。在本指南中,我们将探讨 Laravel 表单的一些基础知识。

表单基础
生成表单

Laravel 的表单生成器是非常易用的。你只需要调用 Form::open 方法,并传入表单的属性,Laravel 将会生成一个开始标签,如下所示:

{{ Form::open(array('url' => 'foo/bar')) }}
输入字段

在 Laravel 中,可以使用 Form::text 方法生成一个文本输入框。例如,下面的代码将生成一个文本输入框,用于输入用户名:

{{ Form::text('username') }}

你可以通过传递第二个参数来设置默认值:

{{ Form::text('username', 'John Doe') }}

同样,你也可以生成其他不同类型的输入框,如下面的代码所示:

{{ Form::password('password') }}
{{ Form::email('email') }}
{{ Form::textarea('message') }}

更多详细信息和用法,请参考官方文档。

复选框和单选按钮

你可以使用 Form::checkboxForm::radio 方法来生成复选框和单选按钮。例如,下面的代码将生成一个复选框,用于选择某个选项:

{{ Form::checkbox('name', 'value') }}

而下面的代码将生成一个单选按钮:

{{ Form::radio('name', 'value') }}
下拉菜单

在 Laravel 中,可以使用 Form::select 方法来生成一个下拉菜单。例如,下面的代码将生成一个下拉菜单,其中包含了一组选项:

{{ Form::select('size', array('L' => 'Large', 'S' => 'Small')) }}
隐藏字段

你可以使用 Form::hidden 方法来生成一个隐藏字段。例如,下面的代码将生成一个名为 token 的隐藏字段,其值为 my_token

{{ Form::hidden('token', 'my_token') }}
表单结束标记

最后,你需要使用 Form::close 方法来生成表单的结束标记:

{{ Form::close() }}
表单验证

Laravel 表单验证是强大而易用的。你只需要在控制器中定义一些验证规则,然后在处理表单请求之前调用 $this->validate 方法即可自动完成验证工作。例如:

public function store(Request $request)
{
    $this->validate($request, [
        'title' => 'required|unique:posts|max:255',
        'body' => 'required',
    ]);

    // 处理表单请求
}

在上面的示例中,$request 是接收到的表单请求,而 titlebody 分别是表单中的输入框的名称。在 $this->validate 方法中,我们定义了 title 为必填字段,并确认其在 posts 表中唯一,且长度不超过 255 个字符。同时,我们还定义了 body 为必填字段。

如果表单验证失败,Laravel 将会自动返回验证错误的信息。你可以使用 $errors 变量来获取这些错误信息,并在视图中显示它们。

@if ($errors->any())
    <div class="alert alert-danger">
        <ul>
            @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    </div>
@endif
API 文档

更多关于 Laravel 表单的详细信息,请参考 Laravel 表单文档