arraypush(array push pop)

http://www.itjxue.com  2023-01-27 08:38  来源:未知  点击次数: 

php中array_push()函数的一些问题

int array_push ( array $array , mixed $var [, mixed $... ] )

array_push() 将 array 当成一个栈,并将传入的变量压入 array 的末尾。array 的长度将根据入栈变量的数目增加。和如下效果相同:

?php

$array[] = $var;

?

并对每个 var 重复以上动作。

返回数组新的单元总数。

在手册上找的,所以楼上的是对的

用array_push给数组添加一个属性值

(1)如果你的数组是一维数组:

如:?$arr?=?array('id'=1001);??给它加个name属性并且name属性有值

可以直接用?array_merge()来合并两个数组

$a?=?'小明';

$arr?=?array('id'=1001);

var_dump(array_merge($arr,?array('name'=$a)));

//输出:

array?(size=2)

??'id'?=?int?1001

??'name'?=?string?'小明'?(length=6)

(2)如果是多维数组:如二维数组,直接循环加属性即可:

as3中数组赋值是array.push("a")效率高,还是array[array.length]="a"效率高

先看数据:

多用了一种方法?

只进行了3次测试

push?方法?平均197毫秒左右

length?方法?平局?178毫秒左右?比push快了?大概10%

第三种方法?平均?125毫秒左右?比length快了?越30%

原因:

push?要执行类的方法,

lenth?要计算?类的长度

测试数据用的比较单一..有可能不准确,可以自己测试下~~

php一维数组怎么追加到二维数组中

假如$leve是是一维数组,$level是二维数组。

代码如下:

假如$leve是是一维数组,$level是二维数组,那么你只要用以下代码就可以进行追加了:

$level =array(3) {

[0]=

array(2) {

? ["id"]=

? int(0)

? ["levelname"]=

? string(12) "普通会员"

}

[1]=

array(2) {

? ["id"]=

? string(1) "8"

? ["levelname"]=

? string(9) "小二哥"

}

}

$leve = array('id'=2,'levelname'='VIP客户');

? $level[]= $leve;

追加以后是

array(3) {

[0]=

array(2) {

? ["id"]=

? int(0)

? ["levelname"]=

? string(12) "普通会员"

}

[1]=

array(2) {

? ["id"]=

? string(1) "8"

? ["levelname"]=

? string(9) "小二哥"

}

[2]=

array(2) {

? ["id"]=

? int(2)

? ["levelname"]=

? string(9) "VIP客户"

}

}

扩展资料

与一维数组一样,行序号和列序号的下标都是从 0 开始的。元素 a[i][j] 表示第 i+1 行、第 j+1 列的元素。数组 int a[m][n] 最大范围处的元素是 a[m–1][n–1]。所以在引用数组元素时应该注意,下标值应在定义的数组大小的范围内。

此外,与一维数组一样,定义数组时用到的“数组名[常量表达式][常量表达式]”和引用数组元素时用到的“数组名[下标][下标]”是有区别的。前者是定义一个数组,以及该数组的维数和各维的大小。而后者仅仅是元素的下标,像坐标一样,对应一个具体的元素。

C 语言对二维数组采用这样的定义方式,使得二维数组可被看作一种特殊的一维数组,即它的元素为一维数组。比如“int a[3][4];”可以看作有三个元素,每个元素都为一个长度为 4 的一维数组。而且 a[0]、a[2]、a[3] 分别是这三个一维数组的数组名。

仅从表现形式上看,矩阵就是二维数组,所以矩阵的创建、表示以及一些操作和数组是一样的,而二者之间的区别在于所遵守的运算规则不同,矩阵的运算一般将矩阵看做是一个整体进行运算,而数组的运算则是对应元素的运算。

Array的join、push、splice、slice各有何用途,splice与slice有何异同?

1. join()方法:join()方法的用途是连接字符串值,join()方法只有一个参数,即数组项之间使用的字符串

如:

var aColors = ["red","green","blue"];

alert(aCloors.join(“-”));//output “red-green-blue”

2.concat()方法:将参数附加到数组末尾,返回新的数组,concat()方法只有一个参数,即要加的项

如:

var aColors = ["red","green","blue"];

var aColors2 = aColors.concat(“yellow”,”purple”);

alert(aColors);//output “red,green,blue”

alert(aColors2);//output “red,green,blue,yellow,purple”

3.slice()方法:接收1个或2个参数,即要提取的项的起始位置和结束位置,如果只有一个参数该方法返回从该位置开始到数组结尾的所有项,如果有2个参数该方法返回第一个位置和第二个位置的所有项,不包括第二个位置的项

如:

var aCloros = ["red","green","blue","yellow","purple"];

var aCloros2 = aCloros.slice(1);

var aCloros3 = aCloros.slice(1,4);

alert(aCloros2);//output “green,blue,yellow,purple”

alert(aCloros3);//output “green,blue,yellow”

4.shift()方法:将删除数组中的第一个项,将其作为函数值返回

5.unshift()方法:把一个项放在数组的第一个位置,然后把余下的项下移一个位置

6.push()方法:在数组的结尾添加一个或多个项

7.pop()方法:删除最后一个数组项,将其作为函数值返回

8.splice()方法:把数据项插入数组中部,调用该方法时传入的参数不同作用不同

删除:传入2个参数,这2个参数是: 要删除的第一个项的位置和要删除的项的个数

替换而不删除:传入3个参数,这3个参数是:起始位置,0(要删除的个数),要插入的项

替换并删除:传入3个参数,这3个参数是:起始位置,要删除的数组项个数,要插入的项

(责任编辑:IT教学网)

更多

相关站内动态文章

推荐站内动态文章