public function dump($deep = 0) { $r = array('collection-of' => $this->_ofclass); $ti = Model::_modelinfo($this->_ofclass); foreach ($this as $v) { $keys = array(); foreach ($ti['primarykey'] as $pk) { $keys[] = sprintf('%s=%s', $pk, $v->{$pk}); } $x = sprintf('%s(%s)', $this->_ofclass, join(',', $keys)); if ($deep) { $r[$x] = $v->dump(); } else { $r[$v->{$pk}] = $x; } } #foreach ($this->pendingdel as $v) { # $r["deleted-".$v->$pk] = sprintf('%s(%s=%s)', $this->_ofclass, $pk, $v->$pk); #} return $r; }