Dalam PHP, tatasusunan dua dimensi sering digunakan untuk menyimpan data jadual atau menyimpan data berkaitan dalam bentuk pasangan nilai kunci. Tetapi kadangkala kita perlu memadamkan data tertentu daripada tatasusunan dua dimensi, jadi artikel ini akan memperkenalkan pelbagai kaedah untuk memadam data tatasusunan dua dimensi.
fungsi array_splice() boleh memadamkan sekeping data tertentu daripada tatasusunan dan mengembalikan elemen yang dipadamkan. Penggunaannya adalah seperti berikut:
array_splice ( array &$input , int $offset [, int $length = 0 [, mixed $replacement = array() ]] ) : array
Antaranya, parameter $input ialah tatasusunan yang perlu dikendalikan parameter $offset ialah kedudukan indeks untuk mula memadamkan parameter $length ialah bilangan elemen; untuk dipadamkan; parameter $replacement boleh Digunakan untuk menggantikan elemen yang dipadam. Jika parameter $length tidak ditentukan, elemen yang dipadam akan bermula pada kedudukan $offset dan pergi ke penghujung tatasusunan. Jika parameter $replacement tidak ditentukan, tatasusunan elemen yang dipadam dikembalikan.
Apabila memadamkan elemen dalam tatasusunan dua dimensi, kita perlu menentukan kedudukan dan kuantiti untuk dipadam, jadi kita boleh menggunakan kod berikut:
$array = array( array('id' => 1, 'name' => 'A'), array('id' => 2, 'name' => 'B'), array('id' => 3, 'name' => 'C'), array('id' => 4, 'name' => 'D') ); $index = 1; //要删除的索引位置 $len = 1; //要删除的元素个数 array_splice($array, $index, $len);
Selepas melaksanakan kod di atas, array $array akan Diubah suai kepada:
[ ['id' => 1, 'name' => 'A'], ['id' => 3, 'name' => 'C'], ['id' => 4, 'name' => 'D'] ]
fungsi unset() boleh digunakan untuk memadam elemen yang sepadan dengan nama kunci yang ditentukan dalam tatasusunan :
unset($array[$key]);
Apabila memadamkan elemen dalam tatasusunan dua dimensi, kita perlu menentukan nama kunci yang hendak dipadamkan dan tatasusunan di mana ia terletak. Sebagai contoh, padam rekod dengan id 2 dalam tatasusunan berikut:
$array = array( array('id' => 1, 'name' => 'A'), array('id' => 2, 'name' => 'B'), array('id' => 3, 'name' => 'C'), array('id' => 4, 'name' => 'D') ); $key = null; foreach ($array as $k => $v) { if ($v['id'] == 2) { $key = $k; //找到了要删除的键名 break; } } if ($key !== null) { unset($array[$key]); }
Selepas melaksanakan kod di atas, tatasusunan $array akan diubah suai kepada:
[ ['id' => 1, 'name' => 'A'], ['id' => 3, 'name' => 'C'], ['id' => 4, 'name' => 'D'] ]
$array = array( array('id' => 1, 'name' => 'A'), array('id' => 2, 'name' => 'B'), array('id' => 3, 'name' => 'C'), array('id' => 4, 'name' => 'D') ); $array = array_filter($array, function($v) { return $v['id'] != 2; //返回id不等于2的记录 });
[ ['id' => 1, 'name' => 'A'], ['id' => 3, 'name' => 'C'], ['id' => 4, 'name' => 'D'] ]
Atas ialah kandungan terperinci php tatasusunan dua dimensi padam. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!