小编Dre*_*een的帖子

Laravel中存储库和接口的用法是什么?

在2年后使用Codeigniter开发了一些项目之后,我开始学习Laravel.

我下载了一些项目,了解它们是如何编码的.据我所知,他们中的许多人只使用与Codeigniter相同的模型,视图和控制器.

但是一个项目使用了存储库和接口.很难理解该项目的最新进展.那么Laravel中存储库和接口的用法是什么?我应该什么时候使用它们?

php interface repository laravel laravel-5

25
推荐指数
4
解决办法
3125
查看次数

CodeIgniter中这些文件的用途是什么?

我2年来一直在使用CodeIgniter.但我不知道关注突出显示的文件.

  1. 他们是什么?
  2. 如果我删除它们会发生什么?

Windows资源管理器的屏幕截图,其中包含.editorconfig,.gitignore,composer.json和contributions.md文件

php codeigniter codeigniter-3

2
推荐指数
1
解决办法
488
查看次数

Laravel Eloquent只在需要的地方和订单条件

请看下面的代码.这段代码我用Codeigniter编写.我需要强调的是条件和订单条件只有在设置了这些发布请求后才能起作用.否则就是我select * from student.

Codeigniter代码

$this->db->select('*');
$this->db->from('student');
if($this->input->post('first_name') != NULL){
    $first_name = $this->input->post('first_name');
    $this->db->where('first_name', $first_name);
}

if($this->input->post('last_name') != NULL){
    $last_name= $this->input->post('last_name');
    $this->db->where('last_name', $last_name);
}

if($this->input->post('order_by') != NULL){
    $order_by= $this->input->post('order_by');
    $this->db->order_by($order_by);
}

$query = $this->db->get();
Run Code Online (Sandbox Code Playgroud)

Laravel代码

我将用laravel做同样的事情.

$first_name = $request->input('first_name');
$last_name = $request->input('last_name');
$order_by = $request->input('$order_by');

$students = Student::orderBy($order_by)
      ->where('first_name',$first_name)
      ->where('last_name',$last_name);
      ->paginate(10);
Run Code Online (Sandbox Code Playgroud)

我能够运行上面的代码.所有发布请求时代码都有效.

但如果没有first_name帖子请求,我需要删除->where('first_name',$first_name).

如果我没有order_by发布请求,我需要删除orderBy($order_by).

如何使用上面的Laravel代码.

php laravel laravel-5 laravel-eloquent

1
推荐指数
1
解决办法
537
查看次数