Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menambah dan memadam elemen pada tatasusunan php
Menambah kaedah: 1. array_unshift() memasukkan elemen pada permulaan, sintaks "array_unshift(array, element list)"; unsur)". Kaedah pemadaman: 1. array_shift() memadamkan elemen pertama, sintaksnya ialah "array_shift(array)"; 2. array_pop() memadamkan elemen terakhir, sintaksnya ialah "array_pop(array)".
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3
Tambah elemen to php array Methods
1. Fungsi array_unshift() memasukkan elemen baharu ke dalam array Fungsi
array_unshift($array,$value1,$value2...)
boleh dimasukkan an atau Berbilang elemen baharu (nilai utama).
Mari kita lihat dengan lebih dekat contoh berikut:
<?php $arr=array(10,12,20); array_unshift($arr,8,"9"); var_dump($arr); ?>
array_unshift($arr,8,9)
Dapat dilihat bahawa dua elemen baharu dimasukkan pada permulaan tatasusunan $arr: nilai " 8
" dan rentetan "9
", jadi hasil output ialah:
Fungsi array_unshift() tidak akan mengekalkan hubungan indeks berangka asal dan akan memadam semua nama kunci berangka , dan tetapkan semula, iaitu, kira sekali lagi daripada 0 tetapi semua nama kunci rentetan kekal tidak berubah.
<?php header("Content-type:text/html;charset=utf-8"); $arr=array("a"=>"red","b"=>"green",3=>"pink"); echo "原来的数组:"; var_dump($arr); array_unshift($arr,"blue"); echo "在开头插入一个新元素后:"; var_dump($arr); ?>
Hasil keluaran:
2 Fungsi array_push() memasukkan elemen baharu ke dalam tatasusunan
array_push($array,$value1,$value2...)
Fungsi ini boleh memasukkan satu atau lebih elemen (nilai kunci) pada penghujung tatasusunan.
Mari kita lihat lebih dekat contoh berikut:
<?php $arr=array(10,12,20); array_push($arr,8,"9",3.14); var_dump($arr); ?>
array_push($arr,8,"9",3.14)
Dapat dilihat bahawa 3 elemen dimasukkan pada penghujung tatasusunan $arr: integer "8
", Rentetan "9
" dan nombor titik terapung "3.14
", jadi hasil output ialah:
Fungsi array_push() adalah berbeza daripada array_unshift() fungsi, ia tidak Nama kunci angka akan ditetapkan semula, tetapi kiraan akan berdasarkan nama kunci angka asal.
<?php header("Content-type:text/html;charset=utf-8"); $arr=array("a"=>"red","b"=>"green",3=>"pink"); array_push($arr,8,"9",3.14); var_dump($arr); ?>
Hasil keluaran:
3 Fungsi array_pad() memasukkan elemen baharu ke dalam tatasusunan
Fungsi array_pad($array,$size,$value)
boleh memasukkan nilai kunci tertentu $value
ke dalam tatasusunan $array
, dengan itu mengisi tatasusunan ke panjang yang ditentukan $size
. (Parameter $size
boleh difahami sebagai bilangan akhir elemen dalam tatasusunan, iaitu panjang tatasusunan selepas operasi sisipan).
Mari kita lihat lebih dekat contoh berikut:
<?php $arr=array(10,12,20); $result =array_pad($arr,5,1); var_dump($result); ?>
Daripada array_pad($arr,5,1)
kita dapat lihat bahawa nilai $size
ialah 5, maka terdapat jumlah 5 in tatasusunan selepas operasi sisipan; dan terdapat 3 elemen pada asalnya, maka hanya 2 elemen yang perlu dimasukkan. Dan oleh kerana nilai yang dimasukkan $value
ialah 1, anda hanya perlu memasukkan 2 elemen dengan nilai "1". Oleh itu, hasil keluaran ialah:
Seperti yang dapat dilihat daripada contoh di atas, fungsi array_pad() boleh memasukkan elemen pada hujung tatasusunan Dalam hakikatnya, fungsi array_pad() juga boleh memasukkan elemen pada penghujung tatasusunan pada permulaan dan kuncinya ialah parameter $size
. Parameter
$size
mempunyai tiga nilai:
ialah nombor positif dan elemen dimasukkan pada penghujung tatasusunan; 🎜>
ialah nombor negatif, masukkan elemen pada permulaan tatasusunan;$array
<?php $arr=array(10,12,20); $result =array_pad($arr,-5,1); var_dump($result); $result =array_pad($arr,3,1); var_dump($result); $result =array_pad($arr,2,1); var_dump($result); ?>
Nilai parameter juga boleh menjadi tatasusunan, iaitu , masukkan keseluruhan tatasusunan, kemudian tatasusunan asal akan menjadi tatasusunan dua dimensi.
$value
Hasil keluaran ialah:
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20); $result =array_pad($arr,-5,array("张三",25,"男")); var_dump($result); ?>
4. Fungsi array_splice() memasukkan elemen baharu ke dalam tatasusunan
ialah fungsi berkuasa yang boleh digunakan untuk memadamkan elemen tatasusunan, menggantikan elemen tatasusunan dan juga memasukkan elemen tatasusunan (hanya tetapkan parameter kepada 0).
Apabila array_splice($array,$start,$length,$value)
, maka parameter $length
boleh menentukan kedudukan (subskrip) untuk mula memasukkan, dan parameter
$length=0
Mari kita lihat lebih dekat contoh berikut: $start
$value
从上例可以看出,当$start=0
时,会将$value值按顺序的插入到数组开头。那么想要在数组末尾插入元素要怎么弄?
简单,将$start
的值设置为“数组长度值”,即count($arr)
即可。
<?php header("Content-type:text/html;charset=utf-8"); $arr1=array(10,12,20); array_splice($arr1,count($arr1),0,"1"); var_dump($arr1); $arr2=array(10,12,20); array_splice($arr2,count($arr2),0,array("1",25,"3")); var_dump($arr2); ?>
输出结果为:
php数组删除元素的方法
1、array_shift()函数删除第一个元素
array_shift() 函数用于删除数组中的第一个元素,并返回被删除的元素。
注释:如果键名是数字的,所有元素都将获得新的键名,从 0 开始,并以 1 递增
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); array_shift($arr); echo "删除后的数组:" ; var_dump($arr); ?>
2、array_pop()函数删除最后一个元素
array_pop() 函数删除数组中的最后一个元素。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); array_pop($arr); echo "删除后的数组:" ; var_dump($arr); ?>
3、array_unique()函数移除重复元素
array_unique() 函数用于移除数组中重复的值。如果两个或更多个数组值相同,只保留第一个值,其他的值被移除。
注释:被保留的数组将保持第一个数组项的键名类型。
array_unique(array,sortingtype)
参数 | 描述 |
---|---|
array | 必需。规定数组。 |
sortingtype | 可选。规定排序类型。可能的值:
|
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(1,2,3,4,4,2,6); echo "原数组:"; var_dump($arr); echo "删除重复值后:" ; var_dump(array_unique($arr)); ?>
4、array_splice()函数删除任意位置元素
array_splice()是一个强大的函数,有多重功能:可以插入数组元素、可以替换数组元素,当然也可以删除数组元素(毕竟array_splice()函数的本职工作是删除指定元素并用其它值取代)。
array_splice()函数可以从指定位置开始删除指定个数的元素。
array_splice($arr,$start)
会删除从$start位置开始的所有元素删除。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); echo "删除后的数组:" ; array_splice($arr,2); var_dump($arr); ?>
$start参数有三种取值情况:
为正数,那么从$start位置开始,往后删除;
为0,那么从第一个元素开始,往后删除;
为负数,则从距离 $arr 末端 -start 的位置开始,从后往前删除。例如 -2 意味着从数组的倒数第二个元素开始。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); echo "删除后的数组:" ; array_splice($arr,-2); var_dump($arr); ?>
array_splice()函数是强大的,可以删除多个元素,也可只删除一个元素,那就需要给该函数指定一个$length参数(第三个参数),该参数用来规定删除的元素个数。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); echo "删除后的数组:" ; array_splice($arr,2,1); var_dump($arr); ?>
$length参数也有三种取值情况:
为正数,那么就表示删除 length 个元素;
为负数,那么将删除从 start 开始,到数组末尾倒数 length 为止的所有元素;
如果省略,那么将删除从 start 开始,一直到数组末尾的所有元素。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); echo "删除后的数组:" ; array_splice($arr,2,-1); var_dump($arr); ?>
$length参数还可以为0,那么就表示不删除元素,可以和该函数的第四个参数$value相配合,进行插入操作(这里就不做具体介绍了)。
5、unset()函数删除指定下标元素
unset()函数可以删除指定下标(键名)的一个数组元素
<?php header('content-type:text/html;charset=utf-8'); $arr = array(0 => "a", 1 => "b", 2 => "c"); echo "原数组:"; var_dump($arr); echo "删除后的数组:" ; unset($arr[1]); //↑ 你想删除的key var_dump($arr); ?>
推荐学习:《PHP视频教程》
Atas ialah kandungan terperinci Bagaimana untuk menambah dan memadam elemen pada tatasusunan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!