Php 从Laravel下拉表单获取值

Php 从Laravel下拉表单获取值,php,laravel,forms,Php,Laravel,Forms,我在表单中有一个简单的下拉列表 表格为: {{Form::label('language', 'Language')}} {{Form::select('Language', $language, '', ['class'=>'form-control']) }} 在控制器的查看功能中,阵列为: $languages = ['English', 'French']; 控制器中的存储功能是: $language = $request->input('language'); 但是,

我在表单中有一个简单的下拉列表

表格为:

{{Form::label('language', 'Language')}}
{{Form::select('Language', $language, '', ['class'=>'form-control']) }}
在控制器的查看功能中,阵列为:

$languages = ['English', 'French'];
控制器中的存储功能是:

$language = $request->input('language');
但是,该方法存储值的位置,而不是值本身。所以,如果我做一个
dd(request()->all()),我得到:

array:4 [▼
"_token" => "..."
"title" => "Course"
"Language" => "1"]

如何获取值而不是位置?

由于您正在接收特定数组元素的数组键,因此只需确保您可以访问该数组以在需要时检索值

$languages[$request->input('language')] // if key = 1 would give you "French" (should check validity of key using array_key_exists)

可以更改数组以根据需要定义键,以便在使用Form::select时使用指定为html元素值的键

您的阵列必须如下所示:

$languages = [
    'english' => 'English', 
    'french' => 'French'
];

这是有效的;我只是觉得有一种更简单的方法来获取值,而不是获取键。