From d03f60c43c43e8fc3d7c97315aba7f8320316611 Mon Sep 17 00:00:00 2001 From: David Grudl Date: Wed, 25 Apr 2007 08:19:03 +0000 Subject: [PATCH] --- dibi/libs/resultset.php | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/dibi/libs/resultset.php b/dibi/libs/resultset.php index 33b5805f..eb7fedf7 100644 --- a/dibi/libs/resultset.php +++ b/dibi/libs/resultset.php @@ -238,17 +238,25 @@ abstract class DibiResult implements IteratorAggregate, Countable /** * Fetches all records from table like $key => $value pairs + * @param string associative key + * @param string value * @return array */ - final function fetchPairs($key, $value) + final function fetchPairs($key=NULL, $value=NULL) { @$this->seek(0); $rec = $this->fetch(); - if (!$rec) - return array(); // empty resultset - if (!array_key_exists($key, $rec) || - !array_key_exists($value, $rec)) return FALSE; + if ($value === NULL) { + $tmp = array_keys($rec); + $key = $tmp[0]; + $value = $tmp[1]; + } else { + if (!array_key_exists($key, $rec)) return FALSE; + if (!array_key_exists($value, $rec)) return FALSE; + } + + if (!$rec) return array(); // empty resultset $arr = array(); do {