Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk membuang nilai pendua dalam php

Bagaimana untuk membuang nilai pendua dalam php

藏色散人
藏色散人asal
2022-10-21 09:13:381999semak imbas

Cara mengalih keluar nilai pendua dalam PHP: 1. Gunakan "function more_array_unique($arr=array()){...}" untuk mengalih keluar berbilang tatasusunan nilai; 2. Gunakan "$arr_new = more_array_unique ($ arr);" kaedah untuk memanggil fungsi deduplikasi; 3. Output tatasusunan deduplikasi.

Bagaimana untuk membuang nilai pendua dalam php

Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer Dell G3.

Bagaimana untuk mengalih keluar nilai pendua dalam PHP?

php mengalih keluar nilai pendua daripada tatasusunan dan mengembalikan hasilnya

array_unique(array) hanya boleh memproses tatasusunan dengan hanya satu nilai.

Untuk mengalih keluar berbilang tatasusunan nilai, anda boleh menggunakan fungsi berikut:

function more_array_unique($arr=array()){  
    foreach($arr[0] as $k => $v){  
        $arr_inner_key[]= $k;   //先把二维数组中的内层数组的键值记录在在一维数组中  
    }  
    foreach ($arr as $k => $v){  
        $v =join(",",$v);    //降维 用implode()也行  
        $temp[$k] =$v;      //保留原来的键值 $temp[]即为不保留原来键值  
    }  
    $temp =array_unique($temp);    //去重:去掉重复的字符串  
    foreach ($temp as $k => $v){  
        $a = explode(",",$v);   //拆分后的重组 如:Array( [0] => james [1] => 30 )  
        $arr_after[$k]= array_combine($arr_inner_key,$a);  //将原来的键与值重新合并  
    }  
    return $arr_after;  
}

mempunyai tatasusunan berikut:

 $arr = array(  
          '0'=>array(  
                   'name'=>'james',  
                   'age'=>30,  
                   ),  
          '1'=>array(  
                   'name'=>'susu',  
                   'age'=>26,  
                   ),  
           '2'=>array(  
                   'name'=>'james',  
                   'age'=>30,  
                   ),  
           'new'=>array(  
                   'name'=>'kube',  
                   'age'=>37,  
                   ),  
           'list'=>array(  
                   'name'=>'kube',  
                   'age'=>27,  
                   ),  
           '435'=>array(  
                   'name'=>'susu',  
                   'age'=>26,  
                   ),
            '33'=>array(  
                   'name'=>'james',  
                   'age'=>30,  
                   ), 
           );

Selepas memanggil fungsi, ia dipaparkan :

Array
(
    [0] => Array
        (
            [name] => james
            [age] => 30
        )
    [1] => Array
        (
            [name] => susu
            [age] => 26
        )
    [new] => Array
        (
            [name] => kube
            [age] => 37
        )
    [list] => Array
        (
            [name] => kube
            [age] => 27
        )
)

Demo ujian adalah seperti berikut:

");   //输出原来的数组  
print_r($arr);  
echo "

"; function more_array_unique($arr=array()){ foreach($arr[0] as $k => $v){ $arr_inner_key[]= $k; //先把二维数组中的内层数组的键值记录在在一维数组中 } foreach ($arr as $k => $v){ $v =join(",",$v); //降维 用implode()也行 $temp[$k] =$v; //保留原来的键值 $temp[]即为不保留原来键值 } $temp =array_unique($temp); //去重:去掉重复的字符串 foreach ($temp as $k => $v){ $a = explode(",",$v); //拆分后的重组 如:Array( [0] => james [1] => 30 ) $arr_after[$k]= array_combine($arr_inner_key,$a); //将原来的键与值重新合并 } return $arr_after; } $arr_new = more_array_unique($arr); //调用去重函数 printf("去除重复元素后的数组:
"); echo '
';
    print_r($arr_new);  
    echo "

"; ?>

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Bagaimana untuk membuang nilai pendua dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn