Найдено 172 результата

Wizard
2018.02.05, 21:54
Форум: Общие вопросы (Yii 2.x)
Тема: ->asArray() а где ->asObject()?
Ответы: 18
Просмотры: 1466

Re: ->asArray() а где ->asObject()?

Можно вообще не использовать Yii, если не нравятся ее подходы или если от фреймворка нужны только хелперы. Есть Doctrine есть другие инструменты для работы с бд. можно, вопрос ведь не в том использовать или нет, суть в том что кто то работает с массивами а кому то удобное работать с объектами (stdC...
Wizard
2018.02.05, 21:48
Форум: Общие вопросы (Yii 2.x)
Тема: ->asArray() а где ->asObject()?
Ответы: 18
Просмотры: 1466

Re: ->asArray() а где ->asObject()?

просто получается что PDOStatement::setFetchMode предусмотрен, но что бы (даже если и в частных случаях как мой) воспользоваться им надо искать варианты вместо того что бы просто воспользоваться в том же Query
Wizard
2018.02.05, 21:45
Форум: Общие вопросы (Yii 2.x)
Тема: ->asArray() а где ->asObject()?
Ответы: 18
Просмотры: 1466

Re: ->asArray() а где ->asObject()?

не знаю, возможно наколхозил но мне как то удобное работать с объектами вместо массивов еще один вариант))) class Query extends \yii\db\Query { public function allClass($db = null) { if ($this->emulateExecution) { return []; } $rows = $this->createCommand($db)->queryAll(5); return $this->populate($r...
Wizard
2018.02.05, 21:40
Форум: Общие вопросы (Yii 2.x)
Тема: ->asArray() а где ->asObject()?
Ответы: 18
Просмотры: 1466

Re: ->asArray() а где ->asObject()?

$products = (new Query()) ->select('id, name, price') ->from('c_products') ->orderBy('RAND()') ->limit(5)->createCommand()->queryAll(5); такой вариант тоже отдает stdClass $products = Product::find()->all(); Отдаст массив с объектами Product да, но для этого необходимо создать модель Product
Wizard
2018.02.05, 21:02
Форум: Общие вопросы (Yii 2.x)
Тема: ->asArray() а где ->asObject()?
Ответы: 18
Просмотры: 1466

Re: ->asArray() а где ->asObject()?

Код: Выделить всё

        $products = (new Query())
            ->select('id, name, price')
            ->from('c_products')
            ->orderBy('RAND()')
            ->limit(5)->createCommand()->queryAll(5);
такой вариант тоже отдает stdClass
Wizard
2018.02.05, 20:37
Форум: Общие вопросы (Yii 2.x)
Тема: ->asArray() а где ->asObject()?
Ответы: 18
Просмотры: 1466

Re: ->asArray() а где ->asObject()?

как то так получил желаемый результат $products = Yii::$app->db->createCommand('SELECT id, name, price FROM c_products LIMIT 1') ->queryAll(5); было бы не плохо иметь возможность установить $fetchMode и в Query public function all($db = null) { if ($this->emulateExecution) { return []; } $rows = $th...
Wizard
2018.02.05, 20:00
Форум: Общие вопросы (Yii 2.x)
Тема: Выборка одного поля
Ответы: 2
Просмотры: 296

Re: Выборка одного поля

maleks писал(а):
2018.02.05, 19:55
column() вместо all()
спасибо
Wizard
2018.02.05, 19:47
Форум: Общие вопросы (Yii 2.x)
Тема: ->asArray() а где ->asObject()?
Ответы: 18
Просмотры: 1466

Re: ->asArray() а где ->asObject()?

someweb писал(а):
2018.02.05, 16:08
ActiveRecord::find() возвращает объекты.
то есть можно выбрать с таблицы строки в виде объектов? У меня не вышло)

в pdo есть возможность извлечь строки в виде объекта http://php.net/manual/ru/pdostatement.fetchobject.php
Wizard
2018.02.05, 19:43
Форум: Общие вопросы (Yii 2.x)
Тема: Выборка одного поля
Ответы: 2
Просмотры: 296

Выборка одного поля

добрый день, подскажите $products = (new Query()) ->select('id') ->from('c_products') ->orderBy('RAND()') ->limit(10) ->all(); получаем массив Array ( [0] => Array ( [id] => 49127 ) [1] => Array ( [id] => 68019 ) ) необходимо получить массив без ключей Array ( [0] => 49127, [1] => 68019 ) есть возмо...
Wizard
2018.02.05, 14:48
Форум: Общие вопросы (Yii 2.x)
Тема: ->asArray() а где ->asObject()?
Ответы: 18
Просмотры: 1466

->asArray() а где ->asObject()?

как то привычнее работать с объектами но ->asObject() не нашел? Действительно нет или не досмотрел?
Wizard
2018.02.05, 14:22
Форум: Общие вопросы по программированию
Тема: Order By RAND() в большой базе
Ответы: 1
Просмотры: 544

Order By RAND() в большой базе

Добрый день! Необходимо вывести случайные записи. Возник вопрос по быстродействию Order By RAND(). Первое что пришло в голову кроном выбрать переодически определенное количество ид (к примеру 5000) и записать в отдельную таблицу, позже с не выбирать случайным образом. Но верное ли решение, возможно ...
Wizard
2018.02.05, 13:53
Форум: Документация и рецепты (Yii 2.x)
Тема: Выборка одного поля
Ответы: 1
Просмотры: 904

Выборка одного поля

Подскажите возможно ли с запроса получить массив только со значениями поля без ключа? $topProducts = (new Query()) ->select('product_id') ->from('top_products') ->orderBy('RAND()') ->limit(20) ->all(); получается массив Array ( [0] => Array ( [product_id] => 44939 ) [1] => Array ( [product_id] => 46...