php数组指定添加数据 php二维数组添加数据

PHP如何给数组中每个元素都加一个指定值?

它的方法也很简单:

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、成都小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了林周免费建站欢迎大家使用!

array_rand($arr[, $num])$arr == 用来取元素的数组$num == 随机取下标的个数其中第二个参数 $num 是可选的,默认为1 。

注意:它的返回值在第二个参数大于 1 的时候是一个数组;当第二个参数不设或者传值 1 的时候是一个下标。

简单的示例代码如下:

1、第二个参数不传值的情况;$arr = Array('a', 'b');$rndKey = array_rand($arr);echo $arr[$rndKey];//输出 a 或者 b

2、第二个参数传值大于 1 的情况;$arr = Array('a', 'b', 'c', 'd');$rndKey = array_rand($arr, 2);print_r($rndKey]);//输出一个随机key的数组

php中怎样向关联数组的指定位置插入另一个数组的元素?

这个功能需求来自于网站运营策略,举倒子:

在一个排行列表中,默认有以下元素,顺序有一定的依据,假设是按下载次数排列。

$rows = array(

array('name'='QQ2010'),

array('name'='QQ2009'),

array('name'='迅雷5'),

array('name'='飞信2010'),

array('name'='Kugoo2010'),

array('name'='TTplayer'),

array('name'='Firefox4.0'),

array('name'='美图秀秀'),

array('name'='360safe'),

array('name'='Chrome6')

);

如果有一个客户[可牛杀毒]想买花10元/元下我们第二个位置,可以大家想,直接把QQ2009替换掉不就完事了吗。不,那样的话用户体验并不好,明明QQ2009是一个下载次数比较多的软件,为什么在列表中却没有了呢。

其实我们真正的需求是把QQ2009以下的单元都往后推,腾出第二个位置来给[可牛杀毒]。如果页面中只能显示10个单元,那倒霉的就是[Chrome6]了,谁叫他们付费买我们的位置呢,呵呵。

再说到程序原理上来吧,PHP要实现这个需求,挺简单,用数组函数array_splice就可以了,具体用法参照PHP手册。

给一个完整的例子吧:

?php

$rows = array(

array('name'='QQ2010',),

array('name'='QQ2009',),

array('name'='迅雷5',),

array('name'='飞信2010',),

array('name'='Kugoo2010',),

array('name'='TTplayer',),

array('name'='Firefox4.0',),

array('name'='美图秀秀',),

array('name'='360safe',),

array('name'='Chrome6',),

);

$pop = array(

'2'=array('name'='可牛杀毒'),

'5'=array('name'='金山词霸2010'),

);

foreach($pop as $key=$p){

array_splice($rows, $key-1, 0, array($p));

}

var_dump($rows);

?

最近的结果是:

array(12) {

[0]=

array(1) {

["name"]=

string(6) "QQ2010"

}

[1]=

array(1) {

["name"]=

string(8) "可牛杀毒"

}

[2]=

array(1) {

["name"]=

string(6) "QQ2009"

}

[3]=

array(1) {

["name"]=

string(5) "迅雷5"

}

[4]=

array(1) {

["name"]=

string(12) "金山词霸2010"

}

[5]=

array(1) {

["name"]=

string(8) "飞信2010"

}

[6]=

array(1) {

["name"]=

string(9) "Kugoo2010"

}

[7]=

array(1) {

["name"]=

string(8) "TTplayer"

}

[8]=

array(1) {

["name"]=

string(10) "Firefox4.0"

}

[9]=

array(1) {

["name"]=

string(8) "美图秀秀"

}

[10]=

array(1) {

["name"]=

string(7) "360safe"

}

[11]=

array(1) {

["name"]=

string(7) "Chrome6"

}

}

php数组怎么添加一个元素

1. php中增加数组元素的方法:

(1)通过赋值增加数组元素 :$states[‘name’]=’Tom’;

(2)int array_push(array target_array,mixed variable [,mixed variable…]) 函数将variable增加到target_array的末尾,成功时返回true,否则返回false,其中variable可以是多个;

(3)int array_unshift(array target_array,mixed variable [,mixed variable…]) 函数将variable增加到target_array的数组头,成功时返回true,否则返回false,其中variable可以是多个。所有已有的数值键都会相应地修改,而关联键不受影响;

(4)array array_pad(array target_array,integer length,mixed pad_value) 将target_array 的大小增加到length指定的长度。

具体方法:

1.使用array_merge方法实现类似array_unshift在开头添加元素的功能

代码如下:

?php

$queue = array('a', 'B');

$queue = array_merge(array('front' = 'hello'), $queue);

/*

Array

(

[front] = hello

[0] = a

[1] = b

)

*/

?

2.+操作符

代码如下:

?php

$queue = array('a', 'B');

$queue = array('front' = 'Hello') + $queue;

?

输出结果与使用array_merge方法一样。

3.在元素结尾添加关联数组元素

代码如下:

?php

$queue = array('a', 'B');

$queue['front'] = 'hello';

/*

输出

Array

(

[0] = a

[1] = b

[front] = hello

)

*/

?

PHP如何动态为多维数组的子数组分别添加元素

$a=array(0=array("name"="a","mail"="b"),1=array("name"="d","mail"="e"));

function addkey($val, $key, $param)

{

$val[$param['key']] = $param['val'];

}

array_walk($a,'addkey',array('key'='tel', 'val'='123'));

print_r($a);

php数组如何增加内容

不知道你是增加数组的元素还是增加数组元素中的内容?

?php

$arr=array('name'='admin','pwd'='123456');

//增加数组元素

$arr['uid']=1;

//增加某个元素的内容

$arr['name']=$arr['name'].'123';

?

php 数组添加元素

用array_slice()函数

array

array_slice

(

array

myarray,

int

offset

[,

int

length]

)

返回myarray数组从地offset开始的length个元素

array_splice与上面的函数类似,只是把返回的部分删除或替代

你的问题实现方法(给你写成函数):

?php

function

array_insert($myarray,$value,$position=0)

{

$fore=($position==0)?array():array_splice($myarray,0,$position);

$fore[]=$value;

$ret=array_merge($fore,$myarray);

return

$ret;

}

?

此函数用法

返回一个数组,内容是在$myarray数组的$position处插入$value

例如:

$a=array("a",

"b","c",

"d");

$a=array_insert($a,"add",3);

print_r($a);

//Array

(

[0]

=

a

[1]

=

b

[2]

=

c

[3]

=

add

[4]

=

d

)

【代码我测试过没有问题】


网站名称:php数组指定添加数据 php二维数组添加数据
分享路径:http://hbruida.cn/article/docjgip.html