这段代码从$vec数组中选择2-6个音高。我想回显每个单独的音高,但有趣的是,它给了我在数组中的音高位置的数值(即:2,5,6而不是D,F,F#)
$pick = rand(2,6);
$vec = array("C","C#","D","D#","E","F","F#","G","G#","A","A#","B");
$random_keys = array_rand($vec,$pick);
foreach ($random_keys as $pitch){
echo $pitch; echo "<br>";
}为什么它要这样做,我如何才能得到的投球而不是数字?
发布于 2013-06-09 04:55:38
试试这个:
$pick = rand(2,6);
$vec = array("C","C#","D","D#","E","F","F#","G","G#","A","A#","B");
$random_keys = array_rand($vec, $pick);
foreach ($random_keys as $key) {
echo $vec[$key], '<br />';
}来自array_rand()文档:
返回值
如果只选择一个条目,array_rand()将返回随机条目的密钥。否则,它将返回随机条目的键数组。这样就可以从数组中选择随机键和值。
https://stackoverflow.com/questions/17006559
复制相似问题