Commit 34165061 authored by Taylor Otwell's avatar Taylor Otwell

increment version. refactor eloquent eager loading matching.

parent 1df8fa91
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* Laravel - A PHP Framework For Web Artisans * Laravel - A PHP Framework For Web Artisans
* *
* @package Laravel * @package Laravel
* @version 3.2.10 * @version 3.2.11
* @author Taylor Otwell <taylorotwell@gmail.com> * @author Taylor Otwell <taylorotwell@gmail.com>
* @link http://laravel.com * @link http://laravel.com
*/ */
......
...@@ -87,17 +87,18 @@ class Belongs_To extends Relationship { ...@@ -87,17 +87,18 @@ class Belongs_To extends Relationship {
{ {
$foreign = $this->foreign_key(); $foreign = $this->foreign_key();
$parents_hash = array(); $dictionary = array();
foreach ($parents as $parent) foreach ($parents as $parent)
{ {
$parents_hash[$parent->get_key()] = $parent; $dictionary[$parent->get_key()] = $parent;
} }
foreach ($children as $child) foreach ($children as $child)
{ {
if (array_key_exists($child->$foreign, $parents_hash)) if (array_key_exists($child->$foreign, $dictionary))
{ {
$child->relationships[$relationship] = $parents_hash[$child->$foreign]; $child->relationships[$relationship] = $dictionary[$child->$foreign];
} }
} }
} }
......
...@@ -91,17 +91,18 @@ class Has_Many extends Has_One_Or_Many { ...@@ -91,17 +91,18 @@ class Has_Many extends Has_One_Or_Many {
{ {
$foreign = $this->foreign_key(); $foreign = $this->foreign_key();
$children_hash = array(); $dictionary = array();
foreach ($children as $child) foreach ($children as $child)
{ {
$children_hash[$child->$foreign][] = $child; $dictionary[$child->$foreign][] = $child;
} }
foreach ($parents as $parent) foreach ($parents as $parent)
{ {
if (array_key_exists($parent->get_key(), $children_hash)) if (array_key_exists($key = $parent->get_key(), $dictionary))
{ {
$parent->relationships[$relationship] = $children_hash[$parent->get_key()]; $parent->relationships[$relationship] = $dictionary[$key];
} }
} }
} }
......
...@@ -328,17 +328,18 @@ class Has_Many_And_Belongs_To extends Relationship { ...@@ -328,17 +328,18 @@ class Has_Many_And_Belongs_To extends Relationship {
{ {
$foreign = $this->foreign_key(); $foreign = $this->foreign_key();
$children_hash = array(); $dictionary = array();
foreach ($children as $child) foreach ($children as $child)
{ {
$children_hash[$child->pivot->$foreign][] = $child; $dictionary[$child->pivot->$foreign][] = $child;
} }
foreach ($parents as $parent) foreach ($parents as $parent)
{ {
if (array_key_exists($parent->get_key(), $children_hash)) if (array_key_exists($key = $parent->get_key(), $dictionary))
{ {
$parent->relationships[$relationship] = $children_hash[$parent->get_key()]; $parent->relationships[$relationship] = $dictionary[$key];
} }
} }
} }
......
...@@ -38,22 +38,18 @@ class Has_One extends Has_One_Or_Many { ...@@ -38,22 +38,18 @@ class Has_One extends Has_One_Or_Many {
{ {
$foreign = $this->foreign_key(); $foreign = $this->foreign_key();
$children_hash = array(); $dictionary = array();
foreach ($children as $child) foreach ($children as $child)
{ {
if (array_key_exists($child->$foreign, $children_hash)) $dictionary[$child->$foreign] = $child;
{
continue;
}
$children_hash[$child->$foreign] = $child;
} }
foreach ($parents as $parent) foreach ($parents as $parent)
{ {
if (array_key_exists($parent->get_key(), $children_hash)) if (array_key_exists($key = $parent->get_key(), $dictionary))
{ {
$parent->relationships[$relationship] = $children_hash[$parent->get_key()]; $parent->relationships[$relationship] = $dictionary[$key];
} }
} }
} }
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
## Contents ## Contents
- [Laravel 3.2.11](#3.2.11)
- [Upgrading From 3.2.10](#upgrade-3.2.11)
- [Laravel 3.2.10](#3.2.10) - [Laravel 3.2.10](#3.2.10)
- [Upgrading From 3.2.9](#upgrade-3.2.10) - [Upgrading From 3.2.9](#upgrade-3.2.10)
- [Laravel 3.2.9](#3.2.9) - [Laravel 3.2.9](#3.2.9)
...@@ -45,6 +47,16 @@ ...@@ -45,6 +47,16 @@
- [Laravel 3.1](#3.1) - [Laravel 3.1](#3.1)
- [Upgrading From 3.0](#upgrade-3.1) - [Upgrading From 3.0](#upgrade-3.1)
<a name="3.2.11"></a>
## Laravel 3.2.11
- Improve performance of Eloquent eager load matching.
<a name="upgrade-3.2.11"></a>
### Upgrading From 3.2.10
- Replace the **laravel** folder.
<a name="3.2.10"></a> <a name="3.2.10"></a>
## Laravel 3.2.10 ## Laravel 3.2.10
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* Laravel - A PHP Framework For Web Artisans * Laravel - A PHP Framework For Web Artisans
* *
* @package Laravel * @package Laravel
* @version 3.2.10 * @version 3.2.11
* @author Taylor Otwell <taylorotwell@gmail.com> * @author Taylor Otwell <taylorotwell@gmail.com>
* @link http://laravel.com * @link http://laravel.com
*/ */
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* Laravel - A PHP Framework For Web Artisans * Laravel - A PHP Framework For Web Artisans
* *
* @package Laravel * @package Laravel
* @version 3.2.10 * @version 3.2.11
* @author Taylor Otwell <taylorotwell@gmail.com> * @author Taylor Otwell <taylorotwell@gmail.com>
* @link http://laravel.com * @link http://laravel.com
*/ */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment