zoukankan      html  css  js  c++  java
  • PHP合并数组+与array_merge的区别

    PHP中合并两个数组可以使用+或者array_merge,但这两个还是有区别的
     
    主要区别是当两个或者多个数组中如果出现相同键名,需要注意以下两点:
    首先需要说明一下php里面数组按键名大约可以分为字符串(关联数组)或者数字(数值数组),这里就不讨论多维数组了。
     
    (1)键名为数字(数值数组)时,array_merge()不会覆盖掉原来的值,但+合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉(不是覆盖)。
     
    (2)键名为字符(关联数组)时,+仍然把最先出现的值作为最终结果返回,把后面的数组拥有相同键名的那些值“抛弃”掉,但array_merge()此时会覆盖掉前面相同键名的值。
    下面通过几个具体的例子进行说明:
    m:Array (
        [0] => a
        [1] => b
    )
    n:Array (
        [0] => c
        [1] => d
    )
    m+n 结果为 : Array (
        [0] => a
        [1] => b
    )
    array_merge(m,n)结果为 : Array (
        [0] => a
        [1] => b
        [2] => c
        [3] => d
    )
    m:Array (
        [1] => a
        [2] => b
    )
    n:Array (
        [2] => c
        [3] => d
    )
    m+n结果为 : Array (
        [1] => a
        [2] => b
        [3] => d
    )
    array_merge(m,n)结果为 : Array (
        [0] => a
        [1] => b
        [2] => c
        [3] => d
    )

    m:Array (
        [a] => a
        [b] => b
    )
    n:Array (
        [b] => c
        [d] => d
    )
    m+n结果为 : Array (
        [a] => a
        [b] => b
        [d] => d
    )
    array_merge(m,n)结果为 : Array (
        [a] => a
        [b] => c
        [d] => d
    )
    is_integer() 此函数是 is_int() 的别名函数,判断是否是整数类型的变量,返回值为true或者false。注意:对于正整数,负整数和0的数字类型变量,该函数都返回true,其他都返回空(包括字符串类型的整数);
    is_numeric() 判断是否是数字,返回值为true或者false。这个函数判断条件非常宽松,只要是数字,无论你是字符串类型的,还是数字类型,无论是正的,负的,0,还是浮点数,都将返回true。其他则返回false。
  • 相关阅读:
    QTP自学攻略
    自动检查页面链接是否有效
    使用Loadrunner进行接口测试
    缺陷管理方案
    python读取文本、配对、插入数据脚本
    QTP 中对象操作
    python学习笔记(三)--条件语句
    npm WARN uninstall not installed in /Users/hrt0kmt/node_modules: "xxx"
    appium mac 下 安装及踩坑
    homebrew -v 或homebrew -doctor报错请检查 .bash_profile是否有误
  • 原文地址:https://www.cnblogs.com/elesos/p/6526000.html
Copyright © 2011-2022 走看看