さて、なんだか月曜初日から毒がたまってしまったような。
ま、そんなときはヨガに限りますな。
予約しておいてよかった。
21時から22時までたっぷり汗をかいて、毒出しました。
ちょっと今くらくら・・・@_@~
さて、これで明日も元気でいこう。
eval { if ($route->{via} eq 'smtp_tls') { $self->{tls_args} = [ $route->{host}, User => $route->{username}, Password => $route->{password}, Port => $route->{port} || 587, ]; $msg->send_by_smtp_tls(@{ $self->{tls_args} }); } elsif ($route->{via} eq 'sendmail') { my %param = (FromSender => "<$cfg->{mailfrom}>"); $param{Sendmail} = $route->{command} if defined $route->{command}; $msg->send('sendmail', %param); } else { my @args = $route->{host} ? ($route->{host}) : (); $msg->send($route->{via}, @args); } };
<code> function rand_array_weight($hoge) { $ret_val = ""; $aryRetval = array(); foreach($hoge as $key => $val) { if($ret_val != ""){break;} $name = $val["name"]; $weight = $val["weight"]; $rand_val = rand(); switch($weight) { case "1": if($rand_val % 10 == 0 ){ array_push($aryRetval, $val["name"]); } break; case "2": if($rand_val % 5 == 0 ){ array_push($aryRetval, $val["name"]); } break; case "3": if($rand_val % 3.33 == 0 ){ array_push($aryRetval, $val["name"]); } break; case "4": if($rand_val % 2.5 == 0 ){ array_push($aryRetval, $val["name"]); } break; case "5": if($rand_val % 2 == 0 ){ array_push($aryRetval, $val["name"]); } break; }// end switch } //end for //すべての評価終了後にどの子をだすか、結局乱数で判定。むぅ。 if(count($aryRetval > 0)) { $randval = rand(); $idx = $randval%count($aryRetval); $ret_val = $aryRetval[$idx]; } //あてはまらない場合は再帰しちゃうの;むぅ。 if($ret_val == ""){$ret_val = rand_array_weight($hoge);} return $ret_val; } //end func </code>
<code> $hoge = array( "A" => array("name" => "Asuka", "weight" => "5"), "B" => array("name" => "Bekey", "weight" => "4"), "C" => array("name" => "Carol", "weight" => "3"), "D" => array("name" => "Diana", "weight" => "2"), "E" => array("name" => "Edy", "weight" => "1"), ); $hyouji = rand_array_weight($hoge); //print $hyouji; //DEBUG STRAT if($debug) { $cntLoop = 100; for($i=0; $i<$cntLoop; $i++)
{ $hyouji = rand_array_weight($hoge); //print $hyouji ."n"; if($hyouji == "Asuka"){ $cntA++; } if($hyouji == "Bekey"){ $cntB++; } if($hyouji == "Carol"){ $cntC++; } if($hyouji == "Diana"){ $cntD++; } if($hyouji == "Edy") { $cntE++; } } print "#### RESULT ####n"; print "Asuka ".$cntA." :". ($cntA / $cntLoop * 100)."% n"; print "Bekey ".$cntB." :". ($cntB / $cntLoop * 100)."% n"; print "Carol ".$cntC." :". ($cntC / $cntLoop * 100)."% n"; print "Diana ".$cntD." :". ($cntD / $cntLoop * 100)."% n"; print "Edy ".$cntE." :". ($cntE / $cntLoop * 100)."% n"; print "------------------n"; print "Total ".($cntA + $cntB + $cntC + $cntD + $cntE) ."n"; } //DEBUG END </code>