Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.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 Laravel 5使用雄辩模型从数据库获取数据_Php_Laravel_Eloquent - Fatal编程技术网

Php Laravel 5使用雄辩模型从数据库获取数据

Php Laravel 5使用雄辩模型从数据库获取数据,php,laravel,eloquent,Php,Laravel,Eloquent,我编写了一个成员函数,如:: public function details($article_seo){ $articleDet = Articles::where(function($query) { $query->where('article-seo', '=', $article_seo); }) ->get(); dd($articleDet); } 并在larave

我编写了一个成员函数,如::

public function details($article_seo){
        $articleDet = Articles::where(function($query) {
            $query->where('article-seo', '=', $article_seo);
            })
        ->get();
        dd($articleDet);
    }
并在laravel控制器的开头使用了这些:

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;
use App\articles;  /** this is the eloquent model **/
问题是: 当我试图传递从url数据接收到的
$article\u seo
时,它会给我一个eror:::
未定义变量:article\u seo


作为一个新手,我已经检查了很多方法,但找不到一个。请帮助

如果要在闭包内部使用外部变量,必须使用
use
关键字将变量传递到闭包中

public function details($article_seo){
        $articleDet = Articles::where(function($query) use ($article_seo) {
            $query->where('article-seo', '=', $article_seo);
            })
        ->get();
        dd($articleDet);
    }
你可以很容易地获得与你的文章seo相匹配的文章

    public function details($article_seo){
        $articleDet = Articles::where('article-seo', '=', $article_seo)
        ->get();
        dd($articleDet);
    }

如果要在闭包内部使用外部变量,必须使用
use
关键字将变量传递到闭包中

public function details($article_seo){
        $articleDet = Articles::where(function($query) use ($article_seo) {
            $query->where('article-seo', '=', $article_seo);
            })
        ->get();
        dd($articleDet);
    }
你可以很容易地获得与你的文章seo相匹配的文章

    public function details($article_seo){
        $articleDet = Articles::where('article-seo', '=', $article_seo)
        ->get();
        dd($articleDet);
    }

闭包在这里是不必要的,您可以简单地使用模型的where方法来完成所需的工作

$details = Articles::where('article-seo', '=', $article_seo)->get();
稍微整理一下,where表达式默认使用等号,所以我们可以忽略它

$details = Articles::where('article-seo', $article_seo)->get();
如果您的数据库值是蛇型的(article_seo而不是article seo),那么您可以进一步简化该表达式

$details = Articles::whereArticleSeo($article_seo)->get();

这比最初基于闭包的方法更容易阅读

这里不需要闭包,您可以简单地使用模型的where方法来完成所需的操作

$details = Articles::where('article-seo', '=', $article_seo)->get();
稍微整理一下,where表达式默认使用等号,所以我们可以忽略它

$details = Articles::where('article-seo', $article_seo)->get();
如果您的数据库值是蛇型的(article_seo而不是article seo),那么您可以进一步简化该表达式

$details = Articles::whereArticleSeo($article_seo)->get();

这比最初基于闭包的方法更容易阅读

也谢谢你的帮助,两种方法都很有帮助,对Laravel来说都是新手,它帮助我探索双向函数谢谢你的帮助,两种方法都很有帮助,对Laravel来说都是新手,它帮助我探索双向函数