XMen
XMen

Reputation: 30248

querying in zend framework

It is my index Action of user Controller :

$users = new Application_Model_DbTable_Users();
        $this->view->users = $users->fetchAll(
        $users->select('userid,username')
        ->order('userid ASC')
        ->limit(10, 0)); 

It is my view :

<?php 
echo "<pre>";
echo print_r($this->users);
?>

In Output i want the JSON of result of user table ,but the Array in the view coming is it is

Zend_Db_Table_Rowset Object
(
    [_data:protected] => Array
        (
            [0] => Array
                (
                    [userid] => 1
                    [username] => rahul
                    [firstname] => rahul1
                    [lastname] => Khan2
                    [password] => ��2jr�``�(E]_�=^
                    [email] => [email protected]
                    [avatar] => 4cfe07efd2e1c.jpg
                    [updatedon] => 2011-01-23 18:45:49
                    [createdon] => 0000-00-00 00:00:00
                    [featuredgibs] => 
                    [defaultgib] => 
                )

the complete

But i want only json :

{
"userid":"1",
"username": "rahul"
} 

Upvotes: 0

Views: 117

Answers (1)

homelessDevOps
homelessDevOps

Reputation: 20726

You have to define the columns you need in the from part, try this one:

$users = new Application_Model_DbTable_Users();

$select = $users->select()
            ->from('table', array('userid', 'username')) // important
            ->order('userid ASC')
            ->limit(10, 0);

$this->view->users = Zend_Json::encode($users->fetchAll($select)); // output json

Upvotes: 2

Related Questions