[英]PHP: array_rand arrays
我有這個數組:
$nonTerminals = array("S","A","B");
$grammar = array(
"$nonTerminals[0]" => "aA",
"$nonTerminals[1]" => array("aA","bB"),
"$nonTerminals[2]" => array("bB","b")
);
我將其用於隨機值:
$rand_keys = array_rand($grammar, 2);
echo $grammar[$rand_keys[0]] . "\n";
但這是錯誤的,因為它給了我一些錯誤。
您可以這樣做:
$nonTerminals = array("S","A","B");
$grammar = array(
"$nonTerminals[0]" => "aA",
"$nonTerminals[1]" => array("aA","bB"),
"$nonTerminals[2]" => array("bB","b")
);
$rand_keys = array_rand($grammar, 2);
if (!is_array($grammar[$rand_keys[0]]) {
//This checks if the value is an array or not.
echo $grammar[$rand_keys[0]];
}
else {
//it is an array, so echo a random value from that array;
echo $grammar[$rand_keys[0]][rand(0, 1)];
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.