Array php pop dengan kunci

Artikel ini membahas opsi yang berbeda untuk menghapus elemen dari array. PHP memiliki banyak fungsi yang membantu dalam menghapus elemen dari array. Karena kami memiliki banyak opsi untuk dijelajahi, mari langsung ke ini tanpa membuang waktu

<?php
$names = ['Micheal','Andrei','Susi','Ron','Brian', 'Arthur', 'Bob'];
 
 
unset($names[0]); //Removes the name Micheal from the array. Zero indicates the index of Micheal in the array.
 
$names = array_values($names); //Just for reindexing the array.
 
/*
Array
(
    [0] => Andrei
    [1] => Susi
    [2] => Ron
    [3] => Brian
    [4] => Arthur
    [5] => Bob
)
*/
?>

Hapus kunci elemen dari array PHP dengan unset

Fungsi unset PHP menghancurkan variabel tertentu atau elemen array.  

unset(mixed $var, mixed ...$vars): void

Fungsi mendapatkan satu atau lebih argumen dan menghancurkan semuanya sekaligus. Jadi, fungsi ini sangat berguna. Contoh berikut menunjukkan hal itu

<?php
$names = ['Micheal','Andrei','Susi','Ron','Brian', 'Arthur', 'Bob'];
 
 
unset($names[0]); //Removes the name Micheal from the array. Zero indicates the index of Micheal in the array.
 
/*
Array
(
    [1] => Andrei
    [2] => Susi
    [3] => Ron
    [4] => Brian
    [5] => Arthur
    [6] => Bob
)
*/
?>
_

Fungsi unset menghapus elemen pertama 'Micheal'. Namun, itu tidak mengindeks ulang array. Sayangnya, tidak mungkin fungsi ini dapat melakukan pengindeksan ulang meskipun ada solusinya dengan biaya tambahan untuk panggilan fungsi tambahan – array_values

<?php
$names = ['Micheal','Andrei','Susi','Ron','Brian', 'Arthur', 'Bob'];
 
 
unset($names[0]); //Removes the name Micheal from the array. Zero indicates the index of Micheal in the array.
 
$names = array_values($names); //Just for reindexing the array.
 
/*
Array
(
    [0] => Andrei
    [1] => Susi
    [2] => Ron
    [3] => Brian
    [4] => Arthur
    [5] => Bob
)
*/
?>

Selain itu, kuncinya di-hardcode untuk nilai 'Micheal'. Ada jalan keluar untuk itu seperti yang ditunjukkan contoh berikut

<?php
$names = ['Micheal','Andrei', 'Ron', 'Susi','Ron','Ron','Brian', 'Arthur', 'Bob', 'Ron'];
 
 
foreach(array_keys($names, 'Ron') as $key)
{
    unset($names[$key]);
}
 
/*
Array
(
    [0] => Micheal
    [1] => Andrei
    [3] => Susi
    [6] => Brian
    [7] => Arthur
    [8] => Bob
)
*/
 
?>

Nama 'Ron' digandakan beberapa kali tetapi contohnya menggunakan kunci_array dengan argumen pencarian. Fungsi dengan argumen pencarian mengembalikan array kunci yang memiliki nilai 'Ron'

Jadi, fungsi unset menghapus elemen array tetapi itu bukan solusi terbaik. Untungnya, ada fungsi yang menyelamatkan kita dari semua kerepotan. Jadi, mari kita lihat selanjutnya

Hapus elemen dari array dengan array_diff

PHP array_diff menghitung perbedaan array. Contoh di sini akan membuatnya jelas.  

array_diff(array $array, array ...$arrays): array

Fungsi menghitung perbedaan

<?php
$names = ['Micheal','Andrei','Susi','Ron','Brian', 'Arthur', 'Bob'];
 
 
unset($names[0]); //Removes the name Micheal from the array. Zero indicates the index of Micheal in the array.
 
/*
Array
(
    [1] => Andrei
    [2] => Susi
    [3] => Ron
    [4] => Brian
    [5] => Arthur
    [6] => Bob
)
*/
?>
_0 dengan sisa
<?php
$names = ['Micheal','Andrei','Susi','Ron','Brian', 'Arthur', 'Bob'];
 
 
unset($names[0]); //Removes the name Micheal from the array. Zero indicates the index of Micheal in the array.
 
/*
Array
(
    [1] => Andrei
    [2] => Susi
    [3] => Ron
    [4] => Brian
    [5] => Arthur
    [6] => Bob
)
*/
?>
1. Ini bekerja seperti operasi perbedaan dari teori himpunan dalam matematika - hal sekolah menengah, ingat?

Array php pop dengan kunci

Jadi, mari kita lihat bagaimana array_diff membantu menghapus elemen dari array

<?php
$names = ['Micheal','Andrei','Susi','Ron','Brian', 'Arthur', 'Bob', 'Ron', 'Ron'];
 
$names = array_diff($names, ['Ron', 'Susi']);
 
/*
Array
(
    [0] => Micheal
    [1] => Andrei
    [4] => Brian
    [5] => Arthur
    [6] => Bob
)
*/
?>
_

Voila. Fungsinya melakukan semua pekerjaan berat. Kami tidak memerlukan loop eksplisit untuk menghapus elemen duplikat dan kami juga tidak memiliki panggilan fungsi tambahan untuk mengindeks ulang array

Hapus elemen dari array dengan array_diff_key

Sekarang seperti yang telah kita pelajari tentang array_diff, inilah saat yang tepat untuk melihat array_diff_key juga. Array_diff_key melakukan fungsi yang sama dengan array_diff kecuali ia melakukan pencocokan pada kunci daripada nilai

Mari kita lihat kembali contoh terakhir tetapi balikkan pasangan kunci dan nilai dalam larik

<?php
$names = ['Micheal'=> 0,'Andrei' => 1,'Susi' => 2,'Ron' => 3, "Ron" => 4];
 
$names = array_diff($names, ['Ron'=>100]);
 
print_r($names);
 
/*
Array
(
    [Micheal] => 42
    [Andrei] => 22
    [Susi] => 18
)
*/
?>

Jadi, fungsinya menghapus nilai dengan kunci "Ron". Kuncinya penting di sini, bukan nilainya

Hapus elemen dari array dengan array_diff_assoc

PHP array_diif_assoc adalah fungsi serupa lainnya dengan perbedaan yang cocok dengan keduanya – kunci dan nilai.  

Mari kita lihat contoh dengan array_diff_assoc untuk melihat perbedaannya

<?php
$names = ['Micheal','Andrei','Susi','Ron', 'Micheal'];
 
$names = array_diff_assoc($names, ['Micheal']);
 
print_r($names);
 
/*
Array
(
    [1] => Andrei
    [2] => Susi
    [3] => Ron
    [4] => Micheal
)
*/
?>
_

Jadi, fungsi menghapus nilai 'Micheal' dengan kunci 0 dan mempertahankan nilai 'Micheal' dengan kunci 4. Itu karena argumen kedua mendapatkan array yang menyertakan 'Micheal' dengan kunci 1. Jadi pencocokan terjadi sebagai, 'hapus nilai Micheal pada kunci 0'

Keluarga array_diff memiliki fungsi lain array_diff_uassoc tetapi kami tidak akan membahasnya karena kami telah menyimpang sedikit dari hidangan utama

Hapus elemen dari array dengan array_splice

PHP array_splice adalah fungsi lain yang membantu menghapus elemen dari array dan secara opsional menggantinya dengan beberapa elemen lain.  

<?php
$names = ['Micheal','Andrei','Susi','Ron','Brian', 'Arthur', 'Bob'];
 
 
unset($names[0]); //Removes the name Micheal from the array. Zero indicates the index of Micheal in the array.
 
/*
Array
(
    [1] => Andrei
    [2] => Susi
    [3] => Ron
    [4] => Brian
    [5] => Arthur
    [6] => Bob
)
*/
?>
_2

Hanya argumen offset dan panjang yang perlu kita ketahui untuk dihapus karena kita tidak bermaksud menggantinya. Namun, memahami fungsi secara keseluruhan bisa jadi merepotkan bagi pemula.  

FuelingPHP memiliki artikel mendalam tentang PHP array_splice. Ini mencakup penjelasan dan visual yang jelas untuk membantu memahami fungsi berdasarkan kombinasi berbeda dari nilai offset dan panjang

Contoh berikut menggunakan fungsi ini untuk menghapus elemen dari array.  

<?php
$names = ['Micheal','Andrei','Susi','Ron', 'Dutch'];
 
array_splice($names, 1 , 1);
 
print_r($names);
 
/*
Array
(
    [0] => Micheal
    [1] => Susi
    [2] => Ron
    [3] => Dutch
)
*/
?>

Sempurna. Ini menghapus elemen 'Andrei' dari array. Perhatikan bahwa itu juga mengindeks ulang array

Kesimpulan

Cukup banyak tentang artikel ini. Artikel tersebut mencakup berbagai opsi untuk menghapus elemen dari array. Fungsi yang tidak disetel berfungsi dengan baik tetapi tidak dapat mengindeks ulang array. Fungsi array_diff sangat membantu karena mengindeks ulang array dan juga menghapus nilai duplikat.  

Artikel ini juga menyertakan contoh lebih banyak fungsi yang mirip dengan array_diff – array_diff_key dan array_diff_assoc. Terakhir, kita memiliki fungsi array_splice yang memerlukan nilai offset dan panjang untuk menghapus elemen atau sebagian dari array

Semoga artikel ini bermanfaat bagi Anda. Jika Anda ingin melihat lebih banyak artikel dan tutorial tentang PHP, pantau terus di FuelingPHP

Ingin mempelajari lebih lanjut tentang PHP?

Kami memiliki banyak artikel menarik yang berhubungan dengan PHP. Anda dapat menjelajahi ini untuk mempelajari lebih lanjut tentang PHP

  • Cara membaca dan menulis file CSV di PHP
  • Intro ke Symfony Doctrine PHP ArrayCollection
  • Bagaimana cara menambahkan header ke file dengan fputcsv

Pos terkait

Array php pop dengan kunci
Cara menambahkan nilai ke array pada indeks tertentu
Array php pop dengan kunci
Menghapus Elemen dari Array PHP asosiatif & multidimensi
Array php pop dengan kunci
Array Objek di PHP. Buat, Urutkan, Filter, Gabungkan, Cari, Dll
Array php pop dengan kunci
Apa yang dimaksud dengan larik asosiatif atau peta hash di PHP


  • ← Cara Menyortir Array Objek berdasarkan Properti di PHP
  • Cara memperbarui kunci tertentu dalam array multidimensi di PHP →

Tulis Kode Lebih Baik Lebih Cepat

Klik di sini untuk mendapatkan rahasia teratas 'Menjadi Rockstar PHP Dev dalam 7 Hari' kami dikirimkan ke kotak masuk Anda

Daftar

Array php pop dengan kunci

Keajaiban Stefanus

Hai. Saya harap Anda menikmati artikel ini. Saya telah mengembangkan situs web dan perangkat lunak secara profesional selama lebih dari 20 tahun. Saya memulai FuelingPHP sebagai cara untuk memberikan kembali kepada komunitas sumber terbuka yang membantu saya dapat hidup dengan nyaman membangun hal-hal yang saya sukai

Bagaimana cara memunculkan array di PHP?

PHP. array_pop() Fungsi . Fungsi bawaan PHP ini digunakan untuk menghapus atau memunculkan dan mengembalikan elemen terakhir dari array yang diteruskan sebagai parameter. Ini mengurangi ukuran array satu per satu sejak elemen terakhir dihapus dari array.

Bagaimana cara menghapus banyak kunci dari array di PHP?

Menggunakan Fungsi unset() . Fungsi unset() digunakan untuk menghapus elemen dari array. Fungsi unset digunakan untuk menghancurkan variabel lain dan cara yang sama digunakan untuk menghapus elemen apa pun dari array. Perintah unset ini mengambil kunci array sebagai input dan menghapus elemen itu dari array.

Bagaimana cara menghapus kunci array terakhir di PHP?

Fungsi array_pop() menghapus elemen terakhir dari sebuah array.

Bagaimana cara menghapus elemen tertentu dari array di PHP?

array_search() mengembalikan kunci elemen yang ditemukannya, yang dapat digunakan untuk menghapus elemen tersebut dari array asli menggunakan unset() .