0

我创建了以下 table 方法,以便提取一些特定的表列,以便以后与存储在数组中的值进行比较:

public function findAllComposedExcelColumns()
  {
    $q = Doctrine_Query::create()
        ->select('p.branch_code, p.state_id, p.state_description, p.account, p.client_name')
        ->from('Process p');

    return ($q->fetchArray());
  }

但是当我打印检索到的数组的一个元素时,它还具有不需要的属性id 。

Array ( [0] => Array ( [id] => 1 [branch_code] => ... [state_id] => ... [state_description] => ... [account] => ... [client_name] => ... ) )

为什么id也出现在结果中?有什么办法可以去掉吗?

4

1 回答 1

0

尝试用 HYDRATE_SCALAR 补水——它可能会给你想要的东西。

例如。

public function findAllComposedExcelColumns()
  {
    $q = Doctrine_Query::create()
        ->select('p.branch_code, p.state_id, p.state_description, p.account, p.client_name')
        ->from('Process p');
    $output = $q->execute(array(), Doctrine_Core::HYDRATE_SCALAR);
    return $output;
  }

编辑:

请注意,这也会更改您的数组键,

例如从 ['branch_code'] 到 ['p_branch_code']

在有相关记录的情况下,使用这种水化方法也不理想。

总而言之,以上实现了您在这种情况下的目标。但是,我同意 DrColossos 的观点,即最好简单地循环并忽略您不想要的数据。

于 2010-09-04T15:15:00.413 回答