数组是几乎所以编程语言里必有的数据结构,而在编程时,数组可以又与其他数组和数据结构相结合,构成如二维数组,三维数组,233维数组和乱七八糟什么都不是的数组。而数组也是最基本的可迭代的数据结构,常与for(foreach)相结合,形成。。。
好了我tm实在编不下去了,下面步入正题。
在PHP中,删除array中的一个元素有两种方法
1.array_splice($array, $offset, 1);
示例代码:
$array = array('aaa', 'bbb', 'ccc', 'ddd');
$offset = 1;
array_splice($array, $offset, 1);
var_dump($array);
/* 输出:
array(3) {
[0]=>
string(3) "aaa"
[1]=>
string(3) "ccc"
[2]=>
string(3) "ddd"
}
*/
注意,不能写成array_splice($array, $offset);,一定要写上最后那个为1的参数,否则会把数组直接从$key的位置删到末尾!
而且array_splice中所用的是偏移量,而不是key,这点要注意!
2.unset($array[$key]);
示例代码:
<?php
$array = array('aaa', 'bbb', 'ccc', 'ddd');
$key = 1;
unset($array[$key]);
var_dump($array);
/* 输出:
array(3) {
[0]=>
string(3) "aaa"
[2]=>
string(3) "ccc"
[3]=>
string(3) "ddd"
}
*/
注意,元素的key没有重新排序,而是直接从0跳到了2,这可能会导致一些潜在的问题,你可以在后面使用array_values();来重新排序key