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