是否可以使用()或load()函數而不是模型對象的集合使用eloquent的方法來加載key =>值的數組?我只需要從關係一對夫婦的價值觀,並且不需要任何對象的功能,所以我真的不需要有可能在Laravel雄辯中預先加載數組而不是模型?
"relations" => [
"relationship" => Collection()
"items" => [
0 => Model()
"attributes" => ...
"table" => ...
"guarded" => ...
...etc
1 => Model(),
...etc
的內存開銷,如果我能有更多的東西一樣
"relations" => [
"relationship" => [
"items" => [
0 => [key => val, key => val ...],
1 => [key => val, key => val ...],
...etc
這可能嗎?甚至是使用一個基本的php對象而不是一個只需要幾個值就會產生瘋狂的開銷的Eloquent模型?我已經查看了API,並在構建查詢生成器對象時跨過了調用堆棧,並且我沒有看到任何明顯的方法來執行此操作,但我很好奇是否有人知道解決方法。
謝謝!
-Eric
不是。但是,您可能可以使用[連接](http://laravel.com/docs/5.0/queries#joins)來獲取所需內容。 – lukasgeiter
除非你正在加載成千上萬的記錄(甚至可能有數十萬) - 現實是你正在浪費你的時間。內存開銷不會對您的應用程序產生任何顯着影響。 – Laurence
實際上,我加載了大量的記錄。很容易在數萬個範圍內,如果在某些情況下可能達到數千個範圍的100個,我不會感到驚訝。我遇到了內存溢出錯誤,迫使我把結果分成很小的塊,導致大量的查詢。我希望將這些切回基本數組可以讓我顯着增加我的塊大小。 – EpicWally