php api ответ не показывает все результаты - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть запрос на выборку в функции, которая выполняется в командной строке sql, отображает все результаты.

Но в ответе почтальона UserInfo показывает только 1 запись в качестве ответа.

protected function getUserSession(){
    $data = $this->params; 

    $sqlquery = "SELECT `Uid` as UID,`CreatedDate"
            . "` as CreatedDate,`Action_key` as ActionKey FROM `UsersOptStatus` ORDER BY Uid DESC LIMIT 10"; 
    $userInfoArray = array();       
    $userInfoArray = $this->getUsersOptStatusTable()->customquery($sqlquery);
    print_r($userInfoArray);

    //$uid =  $this->getUsersNewTable()->uidFromApiKey($data['UserId']);

   return array("errstr"=>"Fetching success.","success"=>1,"data"=>array('UserInfo'=>$userInfoArray));
}


public function customquery($sql) {
    $data = $this->tableGateway->getAdapter()->driver->getConnection()->execute($sql);
    return $data;
}

Выберите результат запроса:

enter image description here

Фактический результат в почтальоне

В сырой вкладке все результаты извлекаются

enter image description here

Во вкладке Pretty это показывает Bad String

enter image description here

Ответы [ 2 ]

0 голосов
/ 12 ноября 2018

Я предлагаю вам:

public function customquery($sql) {
    $data = $this->tableGateway->getAdapter()->driver->getConnection()->execute($sql);
    return iterator_to_array($data);
}
0 голосов
/ 07 ноября 2018

Хорошо, нашел ответ.

Имел ли цикл наборы результатов.

public function customquery($sql) {
    foreach (($this->tableGateway->getAdapter()->driver->getConnection()->execute($sql)) as $row){
        $results[] = $row;
    }
    return $results;

}
...