第二个变量数组$arr为什么会重新定义?不应该是第二个覆盖第一个吗?答案应该有数字有字幕啊?求解释

第二个变量数组$arr为什么会重新定义?不应该是第二个覆盖第一个吗?答案应该有数字有字幕啊?求解释

<?php
$arr = array(5,3.2,'king',3.14);
print_r($arr);
echo '<br>';

$arr = array(
  3 => 'a',
  5 => 'b',
  '7' => 'c'
);
print_r($arr);
echo '<br>';


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
guly 2017-08-07 11:49:02

你好,数据元素键名相同的话只会使用左边数组元素的值,$arr有相同键名3,

如果是两个数据合并的情况下,相同的两个键名的话,去掉左边元素。没有想同的键名的话则重新定义。

如果解决了你的问题,请采纳,祝学习愉快!


  • 提问者 慕标131733 #1
    你的理解和我相同,但是这段代码的运行结果显示第二组数组显示内容只有3,5,7的内容,前面的1,2的消失了。求解释。
    2017-08-07 11:54:04
  • guly 回复 提问者 慕标131733 #2
    你好,这就相当于定义的两个数组名相同的数组,第二个和第一个没有关系,在最后打印的请情况下只会显示第二个数组,你在中间有打印$arr数组,如果在代码末尾打印$arr则只会显示第二个数组,和第一个数组的值没有关系。
    2017-08-07 12:01:08
  • 提问者 慕标131733 回复 guly #3
    收到,谢谢。
    2017-08-07 12:26:27
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师