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);
相关推荐
JaguarJack1 天前
FrankenPHP 原生支持 Windows 了
后端·php·服务端
BingoGo1 天前
FrankenPHP 原生支持 Windows 了
后端·php
JaguarJack2 天前
PHP 的异步编程 该怎么选择
后端·php·服务端
BingoGo2 天前
PHP 的异步编程 该怎么选择
后端·php
JaguarJack3 天前
为什么 PHP 闭包要加 static?
后端·php·服务端
ServBay4 天前
垃圾堆里编码?真的不要怪 PHP 不行
后端·php
用户962377954484 天前
CTF 伪协议
php
BingoGo6 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack6 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
BingoGo7 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php