Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为foreach()提供的参数无效-laravel 5.6_Php_Laravel_Foreach_Arguments - Fatal编程技术网

Php 为foreach()提供的参数无效-laravel 5.6

Php 为foreach()提供的参数无效-laravel 5.6,php,laravel,foreach,arguments,Php,Laravel,Foreach,Arguments,新手在这里练习laravel,我正在使用laravel 5.6制作电影清单。。在那里我可以做基本的CRUD功能 在这里,我按类型对电影进行分类。但是,我出现了这个错误,为foreach()提供了无效参数 这是我的路线:web.php public function getgenre($genre){ $movies = Movie::where('genre', $genre)->whereIn('status', [1])->orderBy('title', 'asc')-

新手在这里练习laravel,我正在使用laravel 5.6制作电影清单。。在那里我可以做基本的CRUD功能

在这里,我按类型对电影进行分类。但是,我出现了这个错误,为foreach()提供了无效参数

这是我的路线:web.php

public function getgenre($genre){
    $movies = Movie::where('genre', $genre)->whereIn('status', [1])->orderBy('title', 'asc')->get();
    return view('genre', compact('movies'));
}
路由::资源('movies','MoviesController')

路径::get('movies/year/{movie}','MoviesController@released');

路径::get('movies/genre/{genre}','MoviesController@getgenre');

这是我的控制器:MoviesController.php

public function getgenre($genre){
    $movies = Movie::where('genre', $genre)->whereIn('status', [1])->orderBy('title', 'asc')->get();
    return view('genre', compact('movies'));
}
以下是我的观点:genre.blade.php

public function getgenre($genre){
    $movies = Movie::where('genre', $genre)->whereIn('status', [1])->orderBy('title', 'asc')->get();
    return view('genre', compact('movies'));
}
@扩展('layouts.app')

@节(“内容”)


@如果($movies->count()<1)
找不到电影
@否则
@foreach($movies作为$movie)
{{ucwords($movie->title)}
{{{ucfirst($movie->genre)}}{{{$movie->released}}}}
@如果($movie->seed==1)
看见了吗
@否则
看到了吗:没有
@恩迪夫
{Form::open(['route'=>['movies.edit',$movie->id],'class'=>'formupdate','method'=>'GET'])}}
{{Form::submit('Update',['class'=>'btn btn primary col-md-2'])}
{{Form::close()}}
{Form::open(['route'=>['movies.destroy',$movie->id],'class'=>'formdelete','method'=>'DELETE'])}}
{{Form::hidden('hidden','hidden')}
{{Form::submit('Delete',['class'=>'btn btn danger col-md-2'])}}
{{Form::close()}}
@endforeach
{{$movie->links()}
@恩迪夫
@停止

我测试了它dd():结果如下:

以下是错误:


谢谢,

更新此行,
其中
需要数组

$movies = Movie::where('genre', $genre)->whereIn('status', [1])->orderBy('title', 'asc')->get();
你有两个问题: 1-更新此数组,并在视图中使用分页,而不将数据作为分页返回

      $movies = Movie::where('genre', $genre)->whereIn('status', [1])>orderBy('title', 'asc')->paginate(10);
2-在您编写的$movie->links()视图中;更新到

        $movies->links(); 

请添加代码,而不是图片或代码链接如果你是新手,最好从CI开始,然后以自己的方式进入laravel。@hungrykoala。。。有人告诉我拉威尔适合初学者。。不过我也会考虑CI。谢谢:)你的建议很管用。非常感谢。我还尝试使用具有两个参数(类型和状态)的where子句,而不是将where单独用于状态。但是为什么放置[]可以解决这个问题呢?因为where需要数组,所以您必须在数组中添加条件