如何在laravel 4中将Object转换为String

时间:2014-01-07 16:22:03

标签: laravel laravel-4

我在模型中有一个函数,我把它返回到一个变量,如下面的

 $books = DB::select('select * from books where category_id = 2');
 return $books;

Laravel Query Builder返回一个对象。如何将它转换为控制器中的字符串?有功能吗?请让我知道。

1 个答案:

答案 0 :(得分:3)

您从此查询中获得了什么

$books = DB::select('select * from books where category_id = 2');

如果你这样做

var_dump($books);

你会发现它是一个数组,而不是一个对象。

你需要一个包含所有记录的大字符串?你可以序列化它:

return serialize($books);

但你必须

unserialize($value);

使用它。

您需要使用从该选择中获得的值吗?您可以在该阵列上使用foreach()

foreach($books as $book)
{
   echo $book['name'];
}

或者您可以选择不同的方式:

$books = Book::where('category_id',2)->get();

使用对象表示法做你的foreach:

foreach($books as $book)
{
   echo $book->name;
}