从其他2个数组创建一个数组

Vic*_*tor 1 php

$arrayA = Array ( 
                 [0] => 1, 
                 [1] => 2, 
                 [2] => 4 
                )

$arrayB = Array ( 
                 [1] => Dog, 
                 [2] => Cat, 
                 [3] => Cow, 
                 [4] => Duck 
                )
Run Code Online (Sandbox Code Playgroud)

如何创建一个$arrayC从上述2个数组中取值的值:

$arrayC = Array ( 
                 [1] => Dog, 
                 [2] => Cat, 
                 [4] => Duck 
                )
Run Code Online (Sandbox Code Playgroud)

从理论上讲,它是这样的:

$arrayC = Array ( 
                 [$arrayA[0]] => $arrayB[$arrayA[0]],
                 [$arrayA[1]] => $arrayB[$arrayA[1]],
                 [$arrayA[2]] => $arrayB[$arrayA[2]]
                )
Run Code Online (Sandbox Code Playgroud)

谢谢.

Sta*_*lin 7

您可以在没有foreach(演示)的情况下以优雅的方式执行此操作:

$arrayC = array_intersect_key($arrayB, array_flip($arrayA));
Run Code Online (Sandbox Code Playgroud)

array_intersect_key[文档]array_flip[文档]

  • 非常好!甚至比我的好. (3认同)
  • +1:会建议这个解决方案,添加一个演示和一些链接. (2认同)