Rumah pembangunan bahagian belakang masalah PHP Bagaimana untuk memadam elemen tatasusunan dalam gelung dalam php

Bagaimana untuk memadam elemen tatasusunan dalam gelung dalam php

Apr 26, 2023 am 10:32 AM

Dalam PHP, tatasusunan ialah struktur data yang penting Ia boleh menyimpan berbilang elemen dan melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan seperti yang diperlukan. Kadangkala kita perlu memadamkan elemen dalam tatasusunan Dalam kes ini, menggunakan gelung untuk memadam adalah kaedah yang berkesan.

PHP menyediakan pelbagai struktur gelung, seperti untuk gelung, gelung sementara, gelung foreach, dsb. Antaranya, gelung foreach ialah struktur gelung khas yang boleh melintasi setiap elemen dalam tatasusunan dengan mudah dan melakukan operasi yang sepadan.

Apabila menggunakan gelung foreach untuk memadamkan elemen tatasusunan, anda mesti memberi perhatian kepada beberapa isu untuk mengelakkan hasil yang tidak dijangka. Di bawah ini kami akan memperkenalkan beberapa teknik pengendalian yang berkaitan dengan memadam elemen tatasusunan dalam gelung.

1. Gunakan fungsi unset untuk memadamkan elemen tatasusunan

Dalam PHP, kita boleh menggunakan fungsi unset untuk memadamkan elemen dengan subskrip tertentu dalam tatasusunan. Penggunaan fungsi ini adalah seperti berikut:

unset($array[$key]);

Di mana, $array ialah nama array, dan $key ialah subskrip bagi elemen untuk dipadamkan. Selepas fungsi ini dilaksanakan, elemen yang sepadan dalam tatasusunan akan dipadamkan.

2. Gunakan gelung foreach untuk memadam elemen tatasusunan

Di bawah ini kami akan memperkenalkan langkah-langkah menggunakan gelung foreach untuk memadam elemen tatasusunan. Katakan kita mempunyai tatasusunan bernama $users yang menyimpan maklumat tentang berbilang pengguna, termasuk nama, umur, jantina, dsb. Sekarang kami mahu memadamkan rekod pengguna yang berumur lebih daripada 30 tahun. Langkah-langkah khusus adalah seperti berikut:

  1. Gunakan gelung foreach untuk melintasi setiap elemen dalam tatasusunan.
  2. Semak setiap elemen Jika umur elemen melebihi 30 tahun, gunakan fungsi tidak ditetapkan untuk memadamkan elemen.
  3. Selepas melengkapkan gelung, rekod pengguna yang berumur lebih daripada 30 tahun dalam tatasusunan asal akan dipadamkan.

Kod sampel adalah seperti berikut:

//定义数组$users,保存用户信息
$users = array(
    array('name'=>'张三','age'=>28,'sex'=>'男'),
    array('name'=>'李四','age'=>35,'sex'=>'男'),
    array('name'=>'王五','age'=>42,'sex'=>'女'),
    array('name'=>'赵六','age'=>25,'sex'=>'女'),
    array('name'=>'孙七','age'=>38,'sex'=>'男')
);

//使用foreach循环删除年龄大于30岁的用户记录
foreach($users as $key=>$value){
    if($value['age']>30){
        unset($users[$key]);
    }
}

//输出删除后的数组
print_r($users);
Salin selepas log masuk

Hasil pelaksanaan adalah seperti berikut:

Array
(
    [0] => Array
        (
            [name] => 张三
            [age] => 28
            [sex] => 男
        )

    [3] => Array
        (
            [name] => 赵六
            [age] => 25
            [sex] => 女
        )

)
Salin selepas log masuk

Kita dapat melihat bahawa selepas pemadaman gelung, umur dalam tatasusunan asal adalah lebih besar daripada Rekod pengguna berumur 30 tahun telah dipadamkan, hanya meninggalkan rekod pengguna berumur 30 tahun ke bawah.

3. Masalah yang disebabkan oleh pemadaman elemen tatasusunan

Apabila menggunakan gelung untuk memadamkan elemen tatasusunan, beberapa masalah mungkin berlaku. Di bawah ini kami akan membincangkan beberapa isu yang perlu diketahui dan cara menyelesaikannya.

  1. Selepas memadamkan elemen tatasusunan, subskrip tatasusunan mungkin berubah.

Apabila menggunakan gelung untuk memadamkan elemen tatasusunan, anda perlu mempertimbangkan bahawa subskrip tatasusunan mungkin berubah. Jika kita menggunakan fungsi unset terus dalam gelung foreach untuk memadamkan elemen, ia akan menyebabkan subskrip tatasusunan tidak berterusan dan beberapa subskrip akan dilangkau.

Untuk mengelakkan situasi ini, kita boleh melintasi tatasusunan dahulu, menyimpan subskrip elemen untuk dipadamkan dalam tatasusunan lain, dan kemudian menggunakan gelung untuk memadam. Kod sampel adalah seperti berikut:

//定义数组$users,保存用户信息
$users = array(
    array('name'=>'张三','age'=>28,'sex'=>'男'),
    array('name'=>'李四','age'=>35,'sex'=>'男'),
    array('name'=>'王五','age'=>42,'sex'=>'女'),
    array('name'=>'赵六','age'=>25,'sex'=>'女'),
    array('name'=>'孙七','age'=>38,'sex'=>'男')
);

//初始化要删除的元素下标数组
$keys = array();

//遍历一遍数组,将要删除的元素下标保存在另一个数组中
foreach($users as $key=>$value){
    if($value['age']>30){
        $keys[] = $key;
    }
}

//使用循环删除要删除的元素
foreach($keys as $key){
    unset($users[$key]);
}

//输出删除后的数组
print_r($users);
Salin selepas log masuk

Hasil pelaksanaan adalah sama seperti contoh sebelumnya Kami berjaya memadamkan rekod pengguna yang berumur lebih daripada 30 tahun dan mengekalkan kesinambungan subskrip tatasusunan.

  1. Selepas memadamkan elemen tatasusunan, anda perlu menyusun semula subskrip tatasusunan.

Selepas menggunakan gelung untuk memadamkan elemen tatasusunan, subskrip mungkin tidak berterusan. Untuk mengelakkan situasi ini menjejaskan program, kita perlu menyusun semula subskrip tatasusunan selepas memadamkan elemen.

Untuk menetapkan semula nama kunci tatasusunan kepada nombor berturut-turut, anda boleh menggunakan fungsi nilai_tatasusunan, yang mengembalikan tatasusunan baharu yang mengandungi semua nilai dalam tatasusunan, disusun semula dengan kekunci angka berturut-turut. Kod sampel adalah seperti berikut:

//定义数组$users,保存用户信息
$users = array(
    array('name'=>'张三','age'=>28,'sex'=>'男'),
    array('name'=>'李四','age'=>35,'sex'=>'男'),
    array('name'=>'王五','age'=>42,'sex'=>'女'),
    array('name'=>'赵六','age'=>25,'sex'=>'女'),
    array('name'=>'孙七','age'=>38,'sex'=>'男')
);

//使用foreach循环删除年龄大于30岁的用户记录
foreach($users as $key=>$value){
    if($value['age']>30){
        unset($users[$key]);
    }
}

//重置数组下标为连续的数字
$users = array_values($users);

//输出删除后的数组
print_r($users);
Salin selepas log masuk

Hasil pelaksanaan adalah sama seperti contoh sebelumnya. Kami berjaya memadamkan rekod pengguna yang berumur lebih daripada 30 tahun dan menetapkan semula subskrip tatasusunan kepada nombor berturut-turut.

Ringkasnya, menggunakan gelung untuk memadam elemen tatasusunan ialah kaedah operasi biasa. Kita perlu memberi perhatian kepada masalah yang mungkin timbul semasa memadamkan elemen dan mengambil penyelesaian yang sepadan untuk memastikan ketepatan dan kestabilan program.

Atas ialah kandungan terperinci Bagaimana untuk memadam elemen tatasusunan dalam gelung dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. Mar 25, 2025 am 10:37 AM

Kompilasi JIT Php 8 meningkatkan prestasi dengan menyusun kod yang sering dilaksanakan ke dalam kod mesin, memberi manfaat kepada aplikasi dengan pengiraan berat dan mengurangkan masa pelaksanaan.

PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. Mar 26, 2025 pm 04:18 PM

Artikel ini membincangkan mendapatkan muat naik fail PHP untuk mengelakkan kelemahan seperti suntikan kod. Ia memberi tumpuan kepada pengesahan jenis fail, penyimpanan selamat, dan pengendalian ralat untuk meningkatkan keselamatan aplikasi.

OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. Mar 26, 2025 pm 04:13 PM

Artikel ini membincangkan kelemahan OWASP 10 dalam strategi PHP dan mitigasi. Isu -isu utama termasuk suntikan, pengesahan yang rosak, dan XSS, dengan alat yang disyorkan untuk memantau dan mendapatkan aplikasi PHP.

Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Mar 25, 2025 pm 03:06 PM

Artikel ini membincangkan pelaksanaan pengesahan dan kebenaran yang mantap dalam PHP untuk mencegah akses yang tidak dibenarkan, memperincikan amalan terbaik dan mengesyorkan alat peningkatan keselamatan.

PHP API Kadar Mengehadkan: Strategi Pelaksanaan. PHP API Kadar Mengehadkan: Strategi Pelaksanaan. Mar 26, 2025 pm 04:16 PM

Artikel ini membincangkan strategi untuk melaksanakan kadar API yang mengehadkan PHP, termasuk algoritma seperti baldi token dan baldi bocor, dan menggunakan perpustakaan seperti simfoni/kadar-limiter. Ia juga meliputi pemantauan, had kadar penyesuaian secara dinamik, dan tangan

Apakah tujuan penyataan yang disediakan dalam PHP? Apakah tujuan penyataan yang disediakan dalam PHP? Mar 20, 2025 pm 04:47 PM

Kenyataan yang disediakan dalam PHP meningkatkan keselamatan pangkalan data dan kecekapan dengan mencegah suntikan SQL dan meningkatkan prestasi pertanyaan melalui kompilasi dan penggunaan semula.

Penyulitan PHP: Penyulitan simetri vs asimetrik. Penyulitan PHP: Penyulitan simetri vs asimetrik. Mar 25, 2025 pm 03:12 PM

Artikel ini membincangkan penyulitan simetri dan asimetrik dalam PHP, membandingkan kesesuaian, prestasi, dan perbezaan keselamatan mereka. Penyulitan simetri lebih cepat dan sesuai untuk data pukal, manakala asimetrik digunakan untuk pertukaran utama yang selamat.

Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Mar 20, 2025 pm 04:57 PM

Artikel membincangkan mendapatkan data dari pangkalan data menggunakan PHP, meliputi langkah, langkah keselamatan, teknik pengoptimuman, dan kesilapan umum dengan penyelesaian.

See all articles