2017-07-19 67 views
0

我知道很简单,但我不知道在这一刻不能使用类型为stdClass的对象作为数组laravel

在我的控制,我使用

$result = DB::select("SELECT name FROM account_name WHERE name='".$name."'"); 

我无法从获得的数据进行该数组

dd($result)告诉我:

array:1 [ 
    0 => {#232 
    +"name": "John" 
    } 
] 

如何获得约翰出来????

我已经试过$result[0]["name"]但没有成功,给我的错误

+4

'$结果[0] - > name' –

+0

简单而有效:d THX – calin24

回答

2
$result = DB::table('account_name')->select('name')->where('name', $name)->first(); 

然后:

$result->name; // John 

或者,你可以这样做:

$result = DB::table('account_name')->where('name', $name)->value('name'); 

然后:

$result; // John 
+0

不与'GET'阵列(或严格说,这一结果 - 集合)?你不应该用'first()'来代替吗? –

+0

它工作正常:D谢谢你$结果= DB ::表('帐户名') - >其中('名称',$名称) - >价值('名称'); – calin24

+0

是的第一次返回一个集合;) – calin24

0

您可以将对象投射到像这样的数组(array) $object
您还可以检查它是否是一个对象:if(is_object($variable)) $variable = (array) $variable

相关问题