thinkphp合并数组问题

$a=array('0','1');$b=array_push($a,"2");这样无法将2添加到$a,显示int3... $a = array('0','1');
$b = array_push($a,"2");
这样无法将2添加到$a,显示int3
展开
 我来答
yimengshixin
推荐于2016-03-01 · TA获得超过224个赞
知道小有建树答主
回答量:109
采纳率:0%
帮助的人:98.1万
展开全部
array_push将指定的值添加到某数组的结尾,返回添加后的数组长度,并不是新数组的值
$a = array('0','1');
$b = array_push($a,"2");     //$b是新添加后数组的长度
var_dump($a);               //此时打印$a
//输出:
array (size=3)
  0 => string '0' (length=1)
  1 => string '1' (length=1)
  2 => string '2' (length=1)
追问
不是这问题,array_push添加"小明"可以,但是如果添加name=>"小明"就不行了
追答

它后面添加的值要么是一个字符串,要么是一个数组:

$a = array('0','1');
$b = array_push($a,array('name'=>'小明'));
var_dump($b);        //输出还是数组的长度
var_dump($a);
//输出:
array (size=3)
  0 => string '0' (length=1)
  1 => string '1' (length=1)
  2 => 
    array (size=1)
      'name' => string '小明' (length=6)
百度网友c41cf28
2013-10-15 · 超过15用户采纳过TA的回答
知道答主
回答量:92
采纳率:0%
帮助的人:45.6万
展开全部
你输出的是$b吧 array_push()该函数返回的是新数组的长度
print_r($a); 输出就是你要的数组!
追问
不是这问题,array_push添加"小明"可以,但是如果添加name=>"小明"就不行了
追答
查询手册看array_push()函数的参数返回值等。
如果只是给$a中添加一个元素 可以用直接赋值,提高效率!
如果是合并两个有多个元素的数组 并且确定键值不重复,用array_merge()函数 合并数组
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式