$res = OppCaricaHasAttoPeer::doSelectRS($c); $firme = array(); while ($res->next()) { $firme[$res->getInt(1)] = $res->getString(2); } $politici[$i]['firme'] = $firme; unset($res); $nfirme = count($firme); echo " ({$nfirme} firme)\n"; } // update dei valori delle firme for ($i = 0; $i < $ncariche; $i++) { $dd = OppSimilaritaPeer::retrieveByPK($politici[$i]['id'], $politici[$i]['id']); if (is_null($dd)) { $dd = new OppSimilarita(); $dd->setCaricaFromId($politici[$i]['id']); $dd->setCaricaToId($politici[$i]['id']); } for ($j = $i + 1; $j < $ncariche; $j++) { $d = OppSimilaritaPeer::retrieveByPK($politici[$i]['id'], $politici[$j]['id']); if (is_null($d)) { $d = new OppSimilarita(); $d->setCaricaFromId($politici[$i]['id']); $d->setCaricaToId($politici[$j]['id']); } $d->setSigningSimilarity(OppSimilaritaPeer::similarityForSignatures($politici[$i], $politici[$j]) / $ncariche); $d->save(); // scrittura elemento simmetrico $ds = OppSimilaritaPeer::retrieveByPK($politici[$j]['id'], $politici[$i]['id']); if (is_null($ds)) { $ds = new OppSimilarita();