ARTS挑战第二周-T:PHP数组相关操作

**array_combine()**函数

合并两个数组

array_combine()传入2个参数,使用方法如下

array_combine (array $keys, array $values): array

返回一个 array,用来自 keys 数组的值作为键名,来自 values 数组的值作为相应的值。

array_key_exists**()**函数

搜索关联数组键

如果在一个数组中找到一个指定的键,函数array_key_exists()返回TRUE,否则返回FALSE。其

形式如下:

array_key_exists (string|int $key, array $array): bool

php 复制代码
<?php

$search_array = array('first' => 1, 'second' => 4);
if (array_key_exists('first', $search_array)) {
    echo "The 'first' element is in the array";
}
php 复制代码
<?php
$search_array = array('first' => null, 'second' => 4);

// 返回 false
isset($search_array['first']);

// 返回 true
array_key_exists('first', $search_array);
?>

array_fill_keys**()**函数

array_fill_keys (array $keys, mixed $value): array

使用 value 参数的值作为值,使用 keys 数组的值作为键来填充一个数组。

array_search() 函数

array_search --- 在数组中搜索给定的值,如果成功则返回首个相应的键名

array_search (mixed $needle, array $haystack, bool $strict = false): int|string|false

haystack 中搜索 needle

php 复制代码
<?php
$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');

$key = array_search('green', $array); // $key = 2;
$key = array_search('red', $array);   // $key = 1;
?>

array_multisort()函数

array_multisort --- 对多个数组或多维数组进行排序

说明

array_multisort (

array &$array1,

mixed $array1_sort_order = SORT_ASC,

mixed $array1_sort_flags = SORT_REGULAR,

mixed ...$rest

): bool

php 复制代码
<?php

// array_multisort
function array_orderby()
{
    $args = func_get_args();
    $data = array_shift($args);
    foreach ($args as $n => $field) {
        if (is_string($field)) {
            $tmp = array();
            foreach ($data as $key => $row)
                $tmp[$key] = $row[$field];
            $args[$n] = $tmp;
            }
    }
    $args[] = &$data;
    call_user_func_array('array_multisort', $args);
    return array_pop($args);
}

$data[] = array('volume' => 67, 'edition' => 2);
$data[] = array('volume' => 86, 'edition' => 1);
$data[] = array('volume' => 85, 'edition' => 6);
$data[] = array('volume' => 98, 'edition' => 2);
$data[] = array('volume' => 86, 'edition' => 6);
$data[] = array('volume' => 67, 'edition' => 7);

// Pass the array, followed by the column names and sort flags
$sorted = array_orderby($data, 'volume', SORT_DESC, 'edition', SORT_ASC);

var_dump($sorted);
相关推荐
echome88821 分钟前
JavaScript Promise 与 async/await 实战:5 个高频异步编程场景的优雅解决方案
开发语言·javascript·ecmascript
你不是我我42 分钟前
【Java 开发日记】为什么要有 time _wait 状态,服务端这个状态过多是什么原因?
java·网络·php
xcLeigh43 分钟前
IoTDB Java 原生 API 实战:SessionPool 从入门到精通
java·开发语言·数据库·api·iotdb·sessionpool
杜子不疼.44 分钟前
Java 智能体学习避坑指南:3 个常见误区,新手千万别踩,高效少走弯路
java·开发语言·人工智能·学习
冬天vs不冷1 小时前
为什么 Java 不让 Lambda 和匿名内部类修改外部变量?final 与等效 final 的真正意义
android·java·开发语言
星河耀银海1 小时前
JAVA 多线程编程:从基础原理到实战应用
java·开发语言·php
星河耀银海1 小时前
JAVA IO流:从基础原理到实战应用
java·服务器·开发语言
摸鱼仙人~1 小时前
Math.js 使用教程
开发语言·javascript·ecmascript
不会写DN1 小时前
构建一个抗揍的 Go TCP 聊天服务:异常兜底与防御性编程实践
tcp/ip·golang·php
HAPPY酷1 小时前
Python高阶开发:从底层原理到架构设计的进阶之路
开发语言·python