From d7fad8a5552fb1556795c70920c692e6a6ae3bcc Mon Sep 17 00:00:00 2001 From: Dmitry Eliseev Date: Wed, 26 Apr 2017 16:09:55 +0300 Subject: [PATCH] Fixes #14059: Removed unused AR instantiating for calling of static methods --- framework/CHANGELOG.md | 1 + framework/db/mssql/QueryBuilder.php | 5 ++--- framework/test/BaseActiveFixture.php | 4 +--- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/framework/CHANGELOG.md b/framework/CHANGELOG.md index 4ff90446b9..38d992de23 100644 --- a/framework/CHANGELOG.md +++ b/framework/CHANGELOG.md @@ -83,6 +83,7 @@ Yii Framework 2 Change Log - Enh #13976: Disabled IPv6 check on `\yii\validators\IpValidator` as it turns out it is not needed for inet_* methods to work (mikk150) - Enh #13981: `yii\caching\Cache::getOrSet()` now supports both `Closure` and `callable` (silverfire) - Enh #13911: Significantly enhanced MSSQL schema reading performance (paulzi, WebdevMerlion) +- Enh #14059: Removed unused AR instantiating for calling of static methods (ElisDN) 2.0.11.2 February 08, 2017 -------------------------- diff --git a/framework/db/mssql/QueryBuilder.php b/framework/db/mssql/QueryBuilder.php index 6cccd40d8d..f8cfa33ea5 100644 --- a/framework/db/mssql/QueryBuilder.php +++ b/framework/db/mssql/QueryBuilder.php @@ -276,9 +276,8 @@ class QueryBuilder extends \yii\db\QueryBuilder if (!$modelClass) { return null; } - /* @var $model \yii\db\ActiveRecord */ - $model = new $modelClass; - $schema = $model->getTableSchema(); + /* @var $modelClass \yii\db\ActiveRecord */ + $schema = $modelClass::getTableSchema(); return array_keys($schema->columns); } diff --git a/framework/test/BaseActiveFixture.php b/framework/test/BaseActiveFixture.php index 7213876254..e3b60920ee 100644 --- a/framework/test/BaseActiveFixture.php +++ b/framework/test/BaseActiveFixture.php @@ -65,10 +65,8 @@ abstract class BaseActiveFixture extends DbFixture implements \IteratorAggregate $row = $this->data[$name]; /* @var $modelClass \yii\db\ActiveRecord */ $modelClass = $this->modelClass; - /* @var $model \yii\db\ActiveRecord */ - $model = new $modelClass; $keys = []; - foreach ($model->primaryKey() as $key) { + foreach ($modelClass::primaryKey() as $key) { $keys[$key] = isset($row[$key]) ? $row[$key] : null; }