Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在数组PHP中取消设置一个重复值_Php_Arrays - Fatal编程技术网

在数组PHP中取消设置一个重复值

在数组PHP中取消设置一个重复值,php,arrays,Php,Arrays,我有两个数组:Array1和Array2。正如您在Array1中看到的,我有两个重复的值。因此,我想做的是取消设置其中一个dublicate(不管是哪一个),因此我需要使用与Array1中已取消设置值相同的键从Array2取消设置值 Array1 ( [0] => 1331-14-2-45 [1] => 1344-1-4-22 **[2] => 1409-1-1-4** [4] => 1312-14-1-23 **[5] =>

我有两个数组:Array1和Array2。正如您在Array1中看到的,我有两个重复的值。因此,我想做的是取消设置其中一个dublicate(不管是哪一个),因此我需要使用与Array1中已取消设置值相同的键从Array2取消设置值

Array1
(
    [0] => 1331-14-2-45
    [1] => 1344-1-4-22
    **[2] => 1409-1-1-4**
    [4] => 1312-14-1-23
    **[5] => 1409-1-1-4**
    [6] => 1365-10-3-30
)

您可以使用该函数,还可以查看。

使用函数和


Array2
(
    [0] => opticalSignalLevelTooLow1490nm#nemodel.GPON.4.6
    [1] => opticalSignalLevelTooLow1490nm#nemodel.GPON.4.6
    [2] => opticalSignalLevelTooLow1490nm#nemodel.GPON.4.6
    [4] => deviceNotActive#nemodel.GPON.4.6
    [5] => deviceNotActive#nemodel.GPON.4.6
    [6] => opticalSignalLevelTooLow1490nm#nemodel.GPON.4.6
)
$uniqueValues = array_unique($inputArray);               //your  first array
$deletedValues = array_diff($inputArray, $uniqueValues);

foreach($deletedValues as $key => $deletedValue){
     unset($secondIput[$key]);                           //you second array
}
<?php
$array1 = array
(
    0 => '1331-14-2-45',
    1 => '1344-1-4-22',
    2 => '1409-1-1-4',
    4 => '1312-14-1-23',
    5 => '1409-1-1-4',
    6 => '1365-10-3-30',
);
$array1_tmp = $array1;
$array2 = array
(
    0 => 'opticalSignalLevelTooLow1490nm#nemodel.GPON.4.6',
    1 => 'opticalSignalLevelTooLow1490nm#nemodel.GPON.4.6',
    2 => 'opticalSignalLevelTooLow1490nm#nemodel.GPON.4.6',
    4 => 'deviceNotActive#nemodel.GPON.4.6',
    5 => 'deviceNotActive#nemodel.GPON.4.6',
    6 => 'opticalSignalLevelTooLow1490nm#nemodel.GPON.4.6',
);
$array1 = array_unique($array1);
$remove_keys = array_keys(array_diff_key($array1_tmp, $array1));
foreach($remove_keys as $k => $v) {
    unset($array2[$v]);
}