Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk mengalih keluar rentetan pendua daripada tatasusunan php

Bagaimana untuk mengalih keluar rentetan pendua daripada tatasusunan php

PHPz
Lepaskan: 2023-03-24 10:38:01
asal
1455 orang telah melayarinya

Dalam pengaturcaraan PHP, tatasusunan sering digunakan sebagai alat untuk menyimpan dan memproses data. Walau bagaimanapun, ini boleh menyebabkan beberapa masalah apabila tatasusunan mengandungi rentetan berulang. Nasib baik, PHP menyediakan beberapa fungsi dan helah terbina dalam untuk mengalih keluar rentetan pendua daripada tatasusunan.

Dalam artikel ini, kita akan belajar cara menulis fungsi untuk mengalih keluar rentetan pendua daripada tatasusunan menggunakan PHP.

  1. Gunakan fungsi array_unique

Fungsi terbina dalam PHP array_unique boleh mengalih keluar rentetan pendua dalam tatasusunan dengan mudah. Fungsi ini mengembalikan tatasusunan baharu dengan semua nilai pendua dialih keluar. Penggunaan khusus adalah seperti berikut:

$originalArray = array("apple","orange","banana","orange","kiwi","banana");
$uniqueArray = array_unique($originalArray);
print_r($uniqueArray);
Salin selepas log masuk

Kod di atas akan mengembalikan hasil berikut:

Array
(
    [0] => apple
    [1] => orange
    [2] => banana
    [4] => kiwi
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Dengan menggunakan fungsi array_unique, kita boleh mengalih keluar rentetan pendua dalam tatasusunan asal dengan mudah .

  1. Gunakan gelung foreach untuk mencapai

Kami juga boleh menggunakan gelung foreach untuk mengalih keluar pendua. Berikut ialah kod PHP yang menggunakan gelung foreach untuk mengalih keluar pendua:

$originalArray = array("apple","orange","banana","orange","kiwi","banana");
$newArray = array();
foreach ($originalArray as $value) {
   if (!in_array($value, $newArray)) {
       $newArray []= $value;
   }
}
print_r($newArray);
Salin selepas log masuk

Gunakan gelung foreach untuk melintasi tatasusunan dan semak sama ada nilai semasa sudah wujud dalam tatasusunan baharu. Jika ia tidak wujud, tambahkannya pada tatasusunan baharu. Jika ada, nilainya diabaikan. Kaedah ini juga boleh mengalih keluar rentetan pendua dengan berkesan dalam tatasusunan dan mengembalikan hasil berikut:

Array
(
    [0] => apple
    [1] => orange
    [2] => banana
    [4] => kiwi
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
  1. Gunakan fungsi array_flip dan array_keys

Satu lagi cara untuk menyahduplikasi tatasusunan ialah menggunakan fungsi PHP terbina dalam array_flip dan array_keys. Fungsi array_flip boleh menukar kunci dan nilai tatasusunan, dan fungsi array_keys boleh mengembalikan semua nama kunci dalam tatasusunan. Berikut ialah kod PHP untuk penyahduplikasian menggunakan array_flip dan array_keys:

$originalArray = array("apple","orange","banana","orange","kiwi","banana");
$newArray = array_flip(array_keys(array_flip($originalArray)));
print_r($newArray);
Salin selepas log masuk

Dalam contoh ini, fungsi array_flip terlebih dahulu menukar nama kunci dan nilai kunci tatasusunan asal untuk mengalih keluar nilai pendua, dan kemudian menggunakan fungsi array_keys Kembalikan semua nama kunci selepas penyahduaan. Akhir sekali, kami menggunakan array_flip untuk menukar nama kunci dan nilai kunci sekali lagi. Dengan cara ini, kita mendapat tatasusunan baharu selepas penyahduplikasian, dan hasilnya adalah sama seperti dua kaedah pertama:

Array
(
    [0] => apple
    [1] => orange
    [2] => banana
    [4] => kiwi
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Ringkasan

Dalam pengaturcaraan PHP, kami Tatasusunan sering diproses. Ini boleh menyebabkan beberapa masalah jika terdapat rentetan pendua dalam tatasusunan. Nasib baik, PHP menyediakan beberapa fungsi dan helah terbina dalam untuk mengalih keluar rentetan pendua daripada tatasusunan. Dalam artikel ini, kami mempelajari tiga cara untuk mencapai fungsi ini, menggunakan fungsi array_unique, menggunakan gelung foreach dan fungsi array_flip dan array_keys. Sama ada cara, mereka boleh menyahduplikasi rentetan dalam tatasusunan dengan berkesan.

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar rentetan pendua daripada tatasusunan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan