你会得到一个n元素数组。必须在不使用PHP中的任何循环的情况下删除重复值,然后打印数组。
null
例如:
Input : array[] = {2, 3, 1, 6, 1, 6, 2, 3} Output : array ( [6] => 2 [7] => 3 [4] => 1 [5] => 6 ) Input : array[] = {4, 2, 7, 3, 2, 7, 3} Output : array ( [0] => 4 [4] => 2 [5] => 7 [6] => 3 )
在里面 C / JAVA ,我们必须遍历数组,对于每个元素,您必须检查其副本是否存在。但是PHP提供了一个内置函数(array_flip()),通过该函数,我们可以在不使用循环的情况下删除重复的元素。
这个 数组_flip() 按翻转顺序返回数组,即数组中的键变为值,数组中的值变为键。
请注意,数组的值必须是有效键,即它们必须是整数或字符串。如果某个值的类型错误,则会发出警告,结果中将不包括有问题的键/值对。
注: 如果一个值多次出现,则将使用最新的键作为其值,其他所有键都将丢失。也作为 数组_flip() 返回带有保留键的数组,我们将使用 数组_值() 这将重新订购钥匙。
方法: 其思想是使用array_flip()函数的这个属性,如果值多次出现,则选择最新的键作为其值。我们将使用array_flip()函数两次来删除重复的值。首次使用array_flip()函数时,它将返回一个数组,其中的键和值与删除的重复项交换。第二次使用时,它会再次将其重新排序为原始配置。
以下是上述理念的实施:
<?php // define array $a = array (1, 5, 2, 5, 1, 3, 2, 4, 5); // print original array echo "Original Array : " ; print_r( $a ); // remove duplicate values by using // flipping keys and values $a = array_flip ( $a ); // restore the array elements by again // flipping keys and values. $a = array_flip ( $a ); // re-order the array keys $a = array_values ( $a ); // print updated array echo "Updated Array : " ; print_r( $a ); ?> |
输出:
Original Array : Array ( [0] => 1 [1] => 5 [2] => 2 [3] => 5 [4] => 1 [5] => 3 [6] => 2 [7] => 4 [8] => 5 ) Updated Array : Array ( [0] => 1 [1] => 5 [2] => 2 [3] => 3 [4] => 4 )
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END