Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.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从数据库获取和打印单个值_Php_Mysql_Laravel - Fatal编程技术网

Php 使用laravel从数据库获取和打印单个值

Php 使用laravel从数据库获取和打印单个值,php,mysql,laravel,Php,Mysql,Laravel,我目前正试图通过创建带有“公司名称”列的表设置来创建我的设置页面。我的想法是获取单一价值公司的名称,并将其打印在页面标题和名称将出现的位置。我只是不知道如何转换DB::select返回的数组以正确打印它 守则: public function __construct() { $company_name = DB::table('settings')->select('company_name')->get(); return View::share('compan

我目前正试图通过创建带有“公司名称”列的表设置来创建我的设置页面。我的想法是获取单一价值公司的名称,并将其打印在页面标题和名称将出现的位置。我只是不知道如何转换DB::select返回的数组以正确打印它

守则:

public function __construct()
{ 
    $company_name = DB::table('settings')->select('company_name')->get();

    return View::share('company_name', $company_name);
}

并在blade系统中将其打印为{{$company\u name},尽管它无法将数组转换为字符串。

您可以使用
->first()
从返回的集合中选择第一个值吗?

我认为您应该重新考虑您的DB模式

但是,如果您想要一个答案来继续使用当前模式:

DB::table('settings')->select('company_name')->first();
这可能引发一个雄辩的ModelNotFound异常

编辑

public function __construct()
{ 
     $result = DB::table('settings')->select('company_name')->first()->toArray();

     return View::share($result);
}
或者使用雄辩的(我会推荐),如下所示:

$company_name = Setting::first()->company_name;
或使用fluent:

$company_name = DB::table('settings')->company_name;

如果您的设置中有多个条目,您可以使用
->where($id,$\u COOKIE[“SessionId”])
并向表中添加一个
SessionId
列。返回的结果是“类stdClass的对象无法转换为字符串”,不幸的是,这也不起作用。它实际上返回一个errorBadMethodCallException调用,调用未定义的方法Illumb\Database\Query\Builder::firstOrFail(),没错,@LucasGomez!我今天学到了一些东西!没有这种方法。还有一个使用雄辩的理由。改用
->first()
方法。是的,我读到它只有在使用雄辩的模型时才起作用,而我实际上是这样,用于此设置(大部分更新)。使用first();返回“类stdClass的对象无法转换为字符串”并按如下方式进行:$company_name=Setting::where('id','=','1')->firstOrFail();它现在可以工作了,但它打印出了整个内容:“{“id”:1,“公司名称”:“Sabores No Colombianos”,“创建于”:“0000-00-00 00:00:00:00”,“更新于”:“2014-04-14 15:25:32”}@LucasGomez Try
Setting::where('id','=','1')->select('company u-u-name')->firstOrFail()太棒了!实际上,我在$company_name=Setting::where('id','=','1')->firstOrFail()中使用了Elountit,与之非常接近;我现在唯一关心的是它打印为:{“公司名称”:“NOMBRE DE EMPRESA”}