Php 如何使用相同的随机生成索引从两个数组中检索值?
我希望使用随机生成的索引从每个数组(具有相同索引)中访问和显示一个值 我的代码:Php 如何使用相同的随机生成索引从两个数组中检索值?,php,arrays,random,indexing,Php,Arrays,Random,Indexing,我希望使用随机生成的索引从每个数组(具有相同索引)中访问和显示一个值 我的代码: $userRank = array( "Nightowl", "Demon Hunter", "Shadow Walker", "Legend" ); $userLevel = array( "Level 5", "Level 10", "Level 15", "Level 20", ); $deck = array(); foreach(
$userRank = array(
"Nightowl",
"Demon Hunter",
"Shadow Walker",
"Legend"
);
$userLevel = array(
"Level 5",
"Level 10",
"Level 15",
"Level 20",
);
$deck = array();
foreach($userRank as $rank){
foreach($userLevel as $level){
$deck[] = array("level" => $level, "rank" => $rank);
}
}
shuffle($deck);
$getVal = array_shift($deck);
echo $getVal['level'] . ' ' . $getVal['rank'];
最终结果是数组从提供的数组中检索随机值
e、 g.10级夜猫子
或20级暗影行者
编辑:我已经知道,如果您使用多维数组,您可以将每个数组分配给其他数组,但我希望使用两个单独的数组。您希望这样吗?这里我们使用并返回函数中的级别和秩数组
我已经知道,如果您使用多维数组,您可以将每个数组分配给其他数组,但我希望使用两个单独的数组
在我看来,另一个答案不符合你的条件。这项任务只需两行代码就可以完成
当您只想使用一个随机键/索引访问每个数组中的单个元素时,组合数组、洗牌数组,然后修改数组(切掉第一个元素),这只是浪费/间接的编程实践——这样,您可以重复使用原始(未损坏的)数组“向下脚本”
这是最直接的使用方法:
代码:()
可能的产出:
Level 10 Demon Hunter
我要把它给你,因为我更喜欢你的答案。Sahil最终需要学会放慢速度,发布更高质量的答案,而不是在没有完全理解问题的情况下试图在8分钟内匆忙给出答案。你真好。我觉得只有失去绿色记号,他才能学会不那么匆忙。是的,我希望大多数用户都能这样做。我宁愿得到一个正确(或更好)的答案,而不是一个“只起作用”的解决方案。
$rand_index=rand(0,sizeof($userRank)-1); // generate a random key/index
echo "{$userLevel[$rand_index]} {$userRank[$rand_index]}"; // display the desired values
Level 10 Demon Hunter