From 02109997483ffcc7a17334c96359bf4fd7c01870 Mon Sep 17 00:00:00 2001 From: DrDeath72 Date: Fri, 2 Oct 2020 13:43:30 +0500 Subject: [PATCH] Fix #18308: Fixed `\yii\base\Model::getErrorSummary()` reverse order --- framework/CHANGELOG.md | 1 + framework/base/Model.php | 2 +- tests/framework/base/ModelTest.php | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/framework/CHANGELOG.md b/framework/CHANGELOG.md index bab9b4d..3f50c0d 100644 --- a/framework/CHANGELOG.md +++ b/framework/CHANGELOG.md @@ -6,6 +6,7 @@ Yii Framework 2 Change Log - Bug #16418: Fixed `yii\data\Pagination::getLinks()` to return links to the first and the last pages regardless of the current page (ptz-nerf, bizley) - Bug #18297: Replace usage of deprecated `ReflectionParameter::isArray()` method in PHP8 (baletskyi) +- Bug #18308: Fixed `\yii\base\Model::getErrorSummary()` reverse order (DrDeath72) 2.0.38 September 14, 2020 diff --git a/framework/base/Model.php b/framework/base/Model.php index b525b16..25433ce 100644 --- a/framework/base/Model.php +++ b/framework/base/Model.php @@ -639,7 +639,7 @@ class Model extends Component implements StaticInstanceInterface, IteratorAggreg $lines = []; $errors = $showAllErrors ? $this->getErrors() : $this->getFirstErrors(); foreach ($errors as $es) { - $lines = array_merge((array)$es, $lines); + $lines = array_merge($lines, (array)$es); } return $lines; } diff --git a/tests/framework/base/ModelTest.php b/tests/framework/base/ModelTest.php index 4fedffb..428f3fb 100644 --- a/tests/framework/base/ModelTest.php +++ b/tests/framework/base/ModelTest.php @@ -322,8 +322,8 @@ class ModelTest extends TestCase 'lastName' => ['Another one!'], ], $speaker->getErrors()); - $this->assertEquals(['Another one!', 'Something is wrong!', 'Totally wrong!'], $speaker->getErrorSummary(true)); - $this->assertEquals(['Another one!', 'Something is wrong!'], $speaker->getErrorSummary(false)); + $this->assertEquals(['Something is wrong!', 'Totally wrong!', 'Another one!'], $speaker->getErrorSummary(true)); + $this->assertEquals(['Something is wrong!', 'Another one!'], $speaker->getErrorSummary(false)); $speaker->clearErrors('firstName'); $this->assertEquals([