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);
相关推荐
勿忘,瞬间8 分钟前
多线程之进阶修炼
java·开发语言
hoiii18737 分钟前
CSTR反应器模型的Simulink-PID仿真(MATLAB实现)
开发语言·matlab
炘爚1 小时前
C++ 右值引用与程序优化
开发语言·c++
si莉亚1 小时前
ROS2安装EVO工具包
linux·开发语言·c++·开源
清心歌2 小时前
CopyOnWriteArrayList 实现原理
java·开发语言
良木生香2 小时前
【C++初阶】C++入门相关知识(2):输入输出 & 缺省参数 & 函数重载
开发语言·c++
忘梓.2 小时前
墨色规则与血色节点:C++红黑树设计与实现探秘
java·开发语言·c++
hhh3u3u3u2 小时前
Visual C++ 6.0中文版安装包下载教程及win11安装教程
java·c语言·开发语言·c++·python·c#·vc-1
星河耀银海2 小时前
C++ 模板进阶:特化、萃取与可变参数模板
java·开发语言·c++
cccccc语言我来了2 小时前
【C++---unordered_set/map底层封装】个不拘一格的集合。它不似有序集合那般循规蹈矩,而是以一种洒脱不羁的方式,将元素们随意地散落其中。每一个元素都是独一无二的。
开发语言·c++·哈希算法