0

有谁知道如何分别定位两个具有相同名称的特定记录?

IE。我正在尝试从数据库中打印两个具有相同名称的字段……当然它给了我相同的结果。

略简略的代码:

$query = db_select('node', 'n');

$query->join('users', 'u', 'u.uid = n.uid'); 
$query->join('taxonomy_term_data', 'td', 'td.tid = ti.tid'); 

 $query
->fields('u', array('name')) 
->fields('td', array('name'))

foreach ($result as $record) {                 

User Name: <?php echo $record->name; ?>
Tag Name : <?php echo $record->name; ?>

}

我找不到答案,但猜测是这样的

<?php echo $record->td['name']; ?>

但没有运气。

4

1 回答 1

0

您可以使用 addField 方法为您的字段添加别名。您的查询可以这样重写:

$query = db_select('node', 'n');

$query->join('users', 'u', 'u.uid = n.uid'); 
$query->join('taxonomy_term_data', 'td', 'td.tid = ti.tid'); 

 $query
->addField('u', 'name', 'username') 
->addField('td', 'name', 'tagname')

foreach ($result as $record) {                 

User Name: <?php echo $record->username; ?>
Tag Name : <?php echo $record->tagname; ?>

}
于 2012-12-20T12:48:35.927 回答