PHP-循环遍历多维百分比列表



我正在构建一个与太空相关的游戏,不知道如何循环我的百分比"产卵"机会数组,最终得到一个特定大小的生成恒星。

它必须如何生成的示例:

$star_chance = rand(1,100);
$star_size_chance = rand(1,100);
//loop through the list of stars here
//selected star - orange
    //loop through the size chances of star orange
    //selected star size = medium
  1. 红色、橙色和黄色恒星各有一次产卵机会,一次只能产卵一颗
  2. 对于每一颗诞生的恒星来说,它都有可能变成什么大小
  3. 该方程需要适应可能更多的恒星或尺寸

    $star_array = array(
    "red" => array(
        "spawn_chance" => "25",
        "size_immense_chance" => "50",
        "size_giant_chance" => "25",
        "size_large_chance" => "15",
        "size_medium_chance" => "5",
        "size_small_chance" => "4",
        "size_dwarf_chance" => "1"
        ),
    "orange" => array(
        "spawn_chance" => "50",
        "size_immense_chance" => "4",
        "size_giant_chance" => "15",
        "size_large_chance" => "50",
        "size_medium_chance" => "25",
        "size_small_chance" => "6",
        "size_dwarf_chance" => "0"
        ),
    "yellow" => array(
        "spawn_chance" => "25",
        "size_immense_chance" => "0",
        "size_giant_chance" => "6",
        "size_large_chance" => "25",
        "size_medium_chance" => "50",
        "size_small_chance" => "15",
        "size_dwarf_chance" => "4",
        )
    );
    

不应该是这样的问题:

$star_array;
foreach($star_array as $chances_array) {
  foreach($chances_array as $chance) {
    // do sth
  }
}

如果你需要钥匙,你可以使用:

$star_array;
foreach($star_array as $star => $chances_array) {
  foreach($chances_array as $chance_name => $chance_percentage) {
    // do sth
  }
}

最新更新