PHP array_combine() 函数内置函数

前言:

array_combine() 是 PHP 中的一个内置函数,用于组合两个数组并通过使用一个数组作为键和另一个数组作为值来创建一个新数组。也就是说,一个数组的所有元素将成为新数组的键,而第二个数组的所有元素将成为这个新数组的值。

例子:

输入: $array1 = ("Ram", "Akash", "Rishav");
        $array2 = ('24', '30', '45');
输出:
        Array
        (
          [Ram] => 24
          [Akash] => 30
          [Rishav] => 45
        )

输入: $array1 = ("65824", "92547", "12045");
        $array2 = ('1', '2', '3');
输出:
        Array
        (
          [65824] => 1
          [92547] => 2
          [12045] => 3
        )

语法:

array_combine( $keys_array, $values_array )

参数:该函数接受两个参数,并且都是强制性的。功能参数如下表:

  • $keys_array:这是一个键数组。如果将非法值作为键传递,则将其转换为字符串
  • $values_array:这是要在新数组中使用的值数组。

返回值:该函数返回一个新的组合数组,其中第一个数组$keys_array 中的元素表示新数组中的键,第二个数组$values_array 中的元素表示新数组中对应的值。如果两个数组中的元素数量不同,则此函数返回 false。

下面的程序说明了 PHP 中的 array_combine() 函数:

<?php

// PHP program to illustrate the working
// of array_combine() function
function Combine($array1, $array2) {
    return(array_combine($array1, $array2));
}

// Driver Code
$array1 = array("Ram", "Akash", "Rishav");
$array2 = array('24', '30', '45');

print_r(Combine($array1, $array2));
?>

输出:

Array
(
    [Ram] => 24
    [Akash] => 30
    [Rishav] => 45
)

注意:两个数组中的元素总数必须相等,函数才能成功执行,否则会抛出错误。

到此这篇关于PHP array_combine() 函数内置函数的文章就介绍到这了,更多相关PHP array_combine() 内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2022-09-19

php数组函数序列之array_combine() - 数组合并函数使用说明

array_combine() 定义和用法 array_combine() 函数通过合并两个数组来创建一个新数组,其中的一个数组是键名,另一个数组的值为键值. 如果其中一个数组为空,或者两个数组的元素个数不同,则该函数返回 false. 语法 array_combine(array1,array2) 参数 描述 array1 必需.规定键名. array2 必需.规定值. 提示和注释 注释:两个参数必须有相同数目的元素. 例子 复制代码 代码如下: <?php $a1=array("a&q

php array_map()函数实例用法

有时候我们想要对数组里的元素进行改变,不过在函数的选择上犯了难题.本篇带来的是array_map函数,对于数组中元素的值进行调整,然后再返回新的数组,处理数组的数量上也不止一个.下面我们就array_map()函数的说明.语法.参数.返回值.实例带来详解. 1.说明 array_map用回调函数处理数组中的各个元素. 在函数中你可以改变各个元素的值,重点在你需要什么样的值就返回什么样的值,保持索引. 可以一次性处理多个数组.但是数组的数量应该与回调函数的参数保持一致 2.语法 array_map

PHP如何使用array_unshift()在数组开头插入元素

PHP array_unshift() 函数用来在数组开头插入一个或多个元素,其语法如下: int array_unshift ( array &$arr , mixed $value1 [, mixed $value2, mixed $value3 ... ] ) 参数说明: arr 表示一个数组: value1, value2, value3 ... 表示需要插入的元素(值). 返回值:返回插入新元素后的数组长度. 两点说明: 元素是作为一个整体被插入的,这些元素在插入后将保持同样的顺序.

php中使用array_filter()函数过滤数组实例讲解

在数组中元素的过滤上,有一种方法比较特殊,结合了回调函数的使用,通过键值来与函数进行对应.相信说到这里很多人对于这种函数方法已经很好奇了,它就是array_filter() 函数的使用.接下来我们对该函数的定义.语法.参数.返回值.实例进行全面的介绍,具体过滤方法展现如下. 1.定义 array_filter用回调函数处理数组中的各个元素. 重点在于过滤(而不是新增)某个元素,当你处理到一个元素时,如果返回了false,那么这个元素将会被过滤掉.PS:保持了原来的索引. 2.语法 array a

php中使用array_filter()函数过滤空数组的实现代码

今天在翻看手册查询array_filter()的使用细节时,看到了个小关键点:If no callback is supplied, all entries of input equal to FALSE (see converting to boolean) will be removed. 如果没有给出回调函数,所有的等于 FALSE 的元素将会被移除掉,这不正好可以用来过滤一些有空元素的数组吗?连忙写个例子测试一下想法: 复制代码 代码如下: $entry = array( 0 => '蓝

ES6中Array.copyWithin()函数的用法实例详解

ES6为Array增加了copyWithin函数,用于操作当前数组自身,用来把某些个位置的元素复制并覆盖到其他位置上去. Array.prototype.copyWithin(target, start = 0, end = this.length) 该函数有三个参数. target:目的起始位置. start:复制源的起始位置,可以省略,可以是负数. end:复制源的结束位置,可以省略,可以是负数,实际结束位置是end-1. 例: 把第3个元素(从0开始)到第5个元素,复制并覆盖到以第1个位置

java中string.trim()函数的作用实例及源码

trim()的作用:去掉字符串首尾的空格. public static void main(String arg[]){ String a=" hello world "; String b="hello world"; System.out.println(b.equals(a)); a=a.trim(); //去掉字符串首尾的空格 System.out.println(a.equals(b)); } 执行结果: a: hello world ,false a:h

C++中指针指向二维数组实例详解

C++中指针指向二维数组实例详解 一维指针通常用指针表示,其指向的地址是数组第一元素所在的内存地址,如下 int ary[4][5]; int(*aryp)[5] = ary; 那么ary[4]相当于int(*aryp),以下理解如此,但参数传递需要知道实参所在 的一维个数,所以传递的时候应该传递多一个参数,子数组的引用可以理解 为(*p),那么取元素就是(*p)[i],如下 void printVal(int(*aryp)[5],int irowCount){ for (int(*p)[5]

使用Python中的reduce()函数求积的实例

编写一个prod()函数,可以接受一个list并利用reduce()求积. from functools import reduce def prod(x,y): return x * y L = reduce(prod,[3,5,7,9]) print(L) 打印结果如下: 以上这篇使用Python中的reduce()函数求积的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

php将字符串转换为数组实例讲解

php将字符串转换为数组 在php中通过使用"explode函数",将字符串转换为数组,该函数的用法为"explode(delimiter,string)",其参数delimiter表示为边界上的分隔字符,参数string表示为输入的字符串. explode说明 explode ( string $delimiter , string $string [, int $limit ] ) : array 此函数返回由字符串组成的数组,每个元素都是 string 的一个

对Django中的权限和分组管理实例讲解

权限 Django中内置了权限的功能.他的权限都是针对表或者说是模型级别的.比如对某个模型上的数据是否可以进行增删改查操作.他不能针对数据级别的,比如对某个表中的某条数据能否进行增删改查操作(如果要实现数据级别的,考虑使用django-guardian).创建完一个模型后,针对这个模型默认就有四种权限,分别是增/删/改/查.可以在执行完migrate命令后,查看数据库中的auth_permission表中的所有权限. 字段: content_type_id:是一个外键,参考表是django_co

java中volatile不能保证线程安全(实例讲解)

今天打了打代码研究了一下java的volatile关键字到底能不能保证线程安全,经过实践,volatile是不能保证线程安全的,它只是保证了数据的可见性,不会再缓存,每个线程都是从主存中读到的数据,而不是从缓存中读取的数据,附上代码如下,当synchronized去掉的时候,每个线程的结果是乱的,加上的时候结果才是正确的. /** * * 类简要描述 * * <p> * 类详细描述 * </p> * * @author think * */ public class Volatil

python中判断文件编码的chardet(实例讲解)

1.实测,这个版本在32位window7和python3.2环境下正常使用. 2.使用方法:把解压后所得的chardet和docs两个文件夹拷贝到python3.2目录下的Lib\site-packages目录下就可以正常使用了. 3.判断文件编码的参考代码如下: file = open(fileName, "rb")#要有"rb",如果没有这个的话,默认使用gbk读文件. buf = file.read() result = chardet.detect(buf)

基于TabLayout中的Tab间隔设置方法(实例讲解)

TabLayout和ViewPager搭配使用,是有很多方便性,但是TabLayout这东西还是有很多被人吐槽的地方. 这里只讲怎么设置tab之间的间隔,网上找了一堆方法,什么padding和margin的啥都没用,没办法,想用TabLayout只能自己想办法了.效果如下: 一.实现方法,既然这东西不好设置,那就直接在背景上做点事情,布局代码如下: <android.support.design.widget.TabLayout xmlns:app="http://schemas.andr