次のコードがあります。
<?php
$gender = array(
'Male'=>30,
'Female'=>50,
'U' =>20);
$total = array_sum(array_values($gender));
$current = 0;
$rand = rand(1,$total);
foreach ($gender as $key=>$value)
{
$current += $value;
if ($current > $rand)
{
echo $key;
}
}
?>
ただし、実行すると、次のようになることがあります。
男性女性U
または:
女性U
$gender 配列の値を設定し、指定されたパーセンテージに基づいて性別を生成したいと考えています。つまり、この場合は男性 30、女性 50、不明 20 です。