从阵列渲染数据以选择选项laravel

从阵列渲染数据以选择选项laravel,laravel,Laravel,//删除重复项 $unique\u years=array\u unique($array) 返回视图(“欢迎”,紧凑型($unique_years)) compact认为数组的值是变量名,因为您传递的是实际数组,而不是变量名。有关compact()工作原理的详细信息,请参阅。相反,您需要: <select name="YearFrom" id="YearFrom_input""> <option selected="selected">Choose Year&l

//删除重复项 $unique\u years=array\u unique($array)

返回视图(“欢迎”,紧凑型($unique_years))


compact
认为数组的值是变量名,因为您传递的是实际数组,而不是变量名。有关
compact()
工作原理的详细信息,请参阅。相反,您需要:

<select name="YearFrom" id="YearFrom_input"">
    <option selected="selected">Choose Year</option>
    @foreach($unique_years as $years)
        <option value='{{$years}}'> {{$years['years']}} </option>
    @endforeach
</select>
也就是说,出于这个原因,我讨厌紧凑的方法。这更具可读性:

return view('welcome',compact('unique_years'));

compact()中的VariableName不正确-应该是类似“variable\u name”的字符串,而不是$variable\u name

return view('welcome')->with('unique_years', $unique_years);

请提供您正在尝试执行的操作的上下文,以及每个代码块应该执行的操作,一个似乎是一个模板,另一个似乎是您试图实现的逻辑。我想从数据库中获取所有年份,并将其呈现到usr页面,以允许用户从仅插入数据库的年份中进行选择查看部分>@AliRezaArju是否有任何问题当您修复我已修复的年份时,是否会出现进一步的错误突出显示?是的,我在这里做的是---非法的字符串偏移量'years'(视图:C:\xampp\htdocs\test\resources\views\welcome.blade.php)嗯,据我所知,没有
$years['years']
这样的东西。您可能只想在那里输出
{{$years}
;返回$users;我得到这个{“dept”:“SECS”},但我只需要“SECS”,distinct函数不起作用。我该怎么办
return view('welcome')->with('unique_years', $unique_years);
function getAllYears()
{
    $year_array = array();
    $posts_dates = Entries::orderBy( 'created_at', 'ASC' )->pluck( 'created_at' );
    $posts_dates = json_decode( $posts_dates );

    if ( ! empty( $posts_dates ) )  {
        foreach ( $posts_dates as $unformatted_date ) {
            $date = new \DateTime( $unformatted_date->date );
            $year_value = $date->format( 'Y' );
            $year_val = $date->format( 'y' );

            //$year_array[$year_val ] = $year_value;
            $year_array[] = $year_value;
        }
    } //return $year_array;

    $array = $year_array;

    // Deleting the duplicate items
    $unique_years = array_unique($array);

    return view('welcome',compact('unique_years'));
}