Zend Framework数据库表获取数组

时间:2012-11-30 10:22:51

标签: zend-framework zend-db zend-db-table

是否可以从db获取数组,将一列作为数组键,将其他列作为数组值?

我目前的代码:

$table = new Zend_Db_Table('translations');

$where = $table->getAdapter()->quoteInto('lang = ?', $locale);      

$result = $table->fetchAll($where)->toArray();

表格结构:

id     key     lang     title
1      key1    en       Some english text
2      key2    de       Some german text

因此,在获取数组之后,我想获得包含键值作为数组键的数组,以及作为数组键值的标题。

我们将不胜感激。

2 个答案:

答案 0 :(得分:4)

如果您需要配对,最好这样做

$table = new Zend_Db_Table ('translations');
$db = $table->getAdapter();
$select = $table->select ()
    ->columns(array('key','title'))
    ->where ('lang = ?', $locale);
$result = $db->fetchPairs($select);

答案 1 :(得分:1)

我不确定你的意思,但让我们试试这个:

    $table = new Zend_Db_Table ('translations');
    $query = $table->select ()
        ->where ('lang = ?', $locale);

    $results = $table->getAdapter ()
        ->fetchAll ($query, array (), Zend_Db::FETCH_GROUP);

    Zend_Debug::dump ($results);