在PHP 中建立加權隨機值
產生隨機值時,可能需要為不同的結果分配不同的機率,從而建立加權值分配。 PHP 透過 getRandomWeightedElement() 函數提供了實現此目的的解決方案。此函數利用關聯數組來定義選擇特定值的相對機會。
例如,要產生1 到10 之間的隨機數(可能性較高為3、4 和5),可以使用下列函數WeightedValues 陣列:
['1' => 1, '2' => 1, '3' => 5, '4' => 5, '5' => 5, '6' => 1, '7' => 1, '8' => 1, '9' => 1, '10' => 1]
在此數組中,值表示每個被選擇的數字的相對機率。由於 3、4 和 5 的機率為 5,因此它們共同出現的頻率會更高。
要使用getRandomWeightedElement() 函數,只需將WeightedValues 數組作為參數傳遞給它即可:
$randomNumber = getRandomWeightedElement($weightedValues);
結果是1 到10 之間隨機選擇的數字,根據$weightedValues中定義的機率進行加權數組。
以上是如何在 PHP 中產生加權隨機值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!