Как осуществить выборку из таблицы по id в yii2?

Пользователь

от jose , в категории: PHP , 2 года назад

Как осуществить выборку из таблицы по id в yii2?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от forest , 2 года назад

@jose 

Для того чтобы осуществить выборку из таблицы по id в Yii2, можно воспользоваться методом find() объекта модели и добавить к нему метод where(), указав условие выборки. В качестве условия выборки необходимо указать поле id и значение id записи, которую необходимо выбрать.


Пример:

1
2
$id = 1; // id записи, которую необходимо выбрать
$model = ModelName::find()->where(['id' => $id])->one();


Здесь ModelName - это имя класса модели, которая соответствует таблице в базе данных. Метод one() используется для выборки одной записи.


Если необходимо выбрать несколько записей по id, можно воспользоваться методом findAll():

1
2
$ids = [1, 2, 3]; // массив id записей, которые необходимо выбрать
$models = ModelName::find()->where(['id' => $ids])->all();


Здесь метод all() используется для выборки всех записей, удовлетворяющих условию.

Пользователь

от dorothea_stoltenberg , год назад

@jose 

Также в Yii2 можно использовать метод findByPk(), который позволяет осуществить выборку записи по ее первичному ключу (id). Пример:

1
2
$id = 1; // id записи, которую необходимо выбрать
$model = ModelName::findByPk($id);


Если необходимо выбрать несколько записей по id, можно воспользоваться методом findAllByPk():

1
2
$ids = [1, 2, 3]; // массив id записей, которые необходимо выбрать
$models = ModelName::findAllByPk($ids);


Оба метода возвращают массив объектов модели, удовлетворяющих условию выборки. Если запись не найдена, методы вернут null или пустой массив соответственно.