sangoku Posted March 21, 2010 Share Posted March 21, 2010 can i somhow write this thing shotrer? becouse in case 1 of switch i only compare it against 0 and in other again against 0 but only in reverse mather,,,, public function finalniObracun($skok = 'pozitivan', $id, $object_name){ //prvo nalazimo sve aktere koji su ocjenili dati objekat $akteri = $this->findObjects($id,$object_name); $error = false; //postavljamo varijablu koja ce pratiti dali je nastala greska switch($skok){//pravimo swithc koji ce gledati koji je skok u pitanju poz/neg case 'pozitivan': foreach ($akteri as $akter){ //ukoliko imamo vrednost glasanja vecu od nule jednostavno nagradjujemo ocjenjivaca if ($akter->vote_value > 0){ //ukoliko je korisnik pozitivno ocijenio objekat $this->nagradiKorisnika($akter->user_ID,$akter->user_value); }else if($akter->vote_value < 0){ //obradjujemo sta je admin zadao kao akciju korisnika if ($akter->user_action == 0){ // suer action = ENUM('default_value', 'vote_value', '0') }else if($akter->user_action == 'vote_value'){ $vrednost= - $akter->vote_value; //ukoliko je korisnik negativno ocijenio objekat $this->nagradiKorisnika($akter->user_ID,$vrednost); }else if ($akter->user_action =='default_value'){ $vrednost= - NEGATIVNA_REAKCIJA_REPUTACIJA; //ukoliko je korisnik negativno ocijenio objekat $this->nagradiKorisnika($akter->user_ID,$vrednost); }else{ $error = true; } } } break; case 'negativan': foreach ($akteri as $akter){ //ukoliko imamo vrednost glasanja vecu od nule jednostavno nagradjujemo ocjenjivaca if ($akter->vote_value < 0){ //ukoliko je korisnik pozitivno ocijenio objekat $this->nagradiKorisnika($akter->user_ID,$akter->user_value); }else if($akter->vote_value > 0){ //obradjujemo sta je admin zadao kao akciju korisnika if ($akter->user_action == 0){ // suer action = ENUM('default_value', 'vote_value', '0') }else if($akter->user_action == 'vote_value'){ $vrednost= - $akter->vote_value; //ukoliko je korisnik negativno ocijenio objekat $this->nagradiKorisnika($akter->user_ID,$vrednost); }else if ($akter->user_action =='default_value'){ $vrednost= - NEGATIVNA_REAKCIJA_REPUTACIJA; //ukoliko je korisnik negativno ocijenio objekat $this->nagradiKorisnika($akter->user_ID,$vrednost); }else{ $error = true; } } } break; } //end switcha skok XD bas veliko haaaa ~.~ ... QQ moram naci jednostavnije Link to comment https://forums.phpfreaks.com/topic/196033-can-i-write-this-swicth-in-some-other-way/ Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.