Добрый день, уважаемые форумчане. У меня появилась проблема и хотел бы попросить у вас совета. На самом деле, даже не знаю, где искать. В программировании я недавно, так что если поставил вопрос не правильно -направьте меня) Имеется такой запрос: Код (Text): select conversion.*, GROUP_CONCAT( concat_ws("=",macros.token_key, macros.token_value) SEPARATOR '&') as pb_macros, pb_method, pb_url from conversion left join offer on offer_id = offer.id left join macros on macros.offer_id = offer.id left join advertiser on advertiser.id = offer.advertiser_id where status = "checking" group by conversion.id; И если получать результат в Navicat, то выводит вполне хороший результат: Но мне требуется вывести данные из этого запроса в yii2, для того, чтобы в дальнейшем работать с этими данными. Запрос в yii2 следующий: PHP: public function getQuery(){ $conversion = Yii::$app->db->createCommand ('SELECT conversion.*, GROUP_CONCAT( CONCAT_WS("=", macros.token_key, macros.token_value) SEPARATOR '&') AS pb_macros, pb_method, pb_url from conversion LEFT JOIN offer ON offer_id = offer.id LEFT JOIN macros ON macros.offer_id = offer.id LEFT JOIN advertiser ON advertiser.id = offer.advertiser_id WHERE status = "checking" GROUP BY conversion.id'); print_r($conversion); } Ну и вызываю в контроллере в действии action. Результат не очень радует глаз, и понимаю, что его нужно как-то преобразовать в нормальный, читабельный вид. Вот результат: Код (Text): yii\db\Command Object ( [db] => yii\db\Connection Object ( [dsn] => mysql:host=localhost;dbname=tracker_db [username] => maxprofit [password] => UsW%{4p:4GZ.h-B? [attributes] => [pdo] => [enableSchemaCache] => [schemaCacheDuration] => 3600 [schemaCacheExclude] => Array ( ) [schemaCache] => cache [enableQueryCache] => 1 [queryCacheDuration] => 3600 [queryCache] => cache [charset] => utf8 [emulatePrepare] => [tablePrefix] => [schemaMap] => Array ( [pgsql] => yii\db\pgsql\Schema [mysqli] => yii\db\mysql\Schema [mysql] => yii\db\mysql\Schema [sqlite] => yii\db\sqlite\Schema [sqlite2] => yii\db\sqlite\Schema [sqlsrv] => yii\db\mssql\Schema [oci] => yii\db\oci\Schema [mssql] => yii\db\mssql\Schema [dblib] => yii\db\mssql\Schema [cubrid] => yii\db\cubrid\Schema ) [pdoClass] => [commandClass] => yii\db\Command [enableSavepoint] => 1 [serverStatusCache] => cache [serverRetryInterval] => 600 [enableSlaves] => 1 [slaves] => Array ( ) [slaveConfig] => Array ( ) [masters] => Array ( ) [masterConfig] => Array ( ) [_transaction:yii\db\Connection:private] => [_schema:yii\db\Connection:private] => [_driverName:yii\db\Connection:private] => [_slave:yii\db\Connection:private] => [_queryCacheInfo:yii\db\Connection:private] => Array ( ) [_events:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) [pdoStatement] => [fetchMode] => 2 [params] => Array ( ) [queryCacheDuration] => [queryCacheDependency] => [_pendingParams:yii\db\Command:private] => Array ( ) [_sql:yii\db\Command:private] => @A p`Ol " CP@_AED@AD( BOLADNVA ")", LADDJEI m`b`b D kdfErAhd ) CD@AR@D [_refreshTableName:yii\db\Command:private] => [_events:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => ) Хотелось, если возможно его в active record перевести, просто тут я даже не представляю как функции вставлять туда. Спасибо!
Построил по-другому запрос, вроде через active record PHP: $conversions = new Conversion; $conversions = Conversion::find()->select(['conversion.*', "GROUP_CONCAT( CONCAT_WS('=', macros.token_key, macros.token_value) SEPARATOR '&') AS pb_macros, pb_method, pb_url"])->from('conversion') ->leftJoin('offer', '`conversion`.`offer_id` = `offer`.`id`') ->leftJoin('macros', '`macros`.`offer_id` = `offer`.`id`') ->leftJoin('advertiser', '`offer`.`advertiser_id` = `advertiser`.`id`') ->where(['conversion.status' => "checking"])->all(); print_r($conversions); Данные, которые мне нужны, то есть pb_macros, pb_method, pb_url в таком же виде, остальное норм) Код (Text): Array ( [0] => app\models\Conversion Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 20 [offer_id] => 1 [click_id] => 1 [partner_id] => 0 [lead_id] => 333 [lead_country] => de [lead_landing] => de1.mybigsizer.com [user_ip] => ::1 [user_country] => [date_lead] => 0000-00-00 00:00:00 [status] => checking [response_s2s] => [lead_sub1] => [lead_sub2] => qsdqsd [lead_sub3] => 0 ) [_oldAttributes:yii\db\BaseActiveRecord:private] => Array ( [id] => 20 [offer_id] => 1 [click_id] => 1 [partner_id] => 0 [lead_id] => 333 [lead_country] => de [lead_landing] => de1.mybigsizer.com [user_ip] => ::1 [user_country] => [date_lead] => 0000-00-00 00:00:00 [status] => checking [response_s2s] => [lead_sub1] => [lead_sub2] => qsdqsd [lead_sub3] => 0 ) [_related:yii\db\BaseActiveRecord:private] => Array ( ) [_errors:yii\base\Model:private] => [_validators:yii\base\Model:private] => [_scenario:yii\base\Model:private] => default [_events:yii\base\Component:private] => Array ( ) [_behaviors:yii\base\Component:private] => Array ( ) ) ) Как получить данные, содержащиеся здесь [_related:yii\db\BaseActiveRecordrivate] --- Добавлено --- Решил вопрос, спасибо, надо было добавить asArray()->all() Всем хорошего дня)