当前位置: 首页> 最新文章列表> 用 array_fill() 搭配 array_combine() 创建键值对数组

用 array_fill() 搭配 array_combine() 创建键值对数组

M66 2025-05-14

在 PHP 中,array_fill()array_combine() 是两个非常实用的数组函数。array_fill() 用来填充一个数组,而 array_combine() 则用来创建一个键值对数组。将这两个函数结合使用,可以非常方便地创建一个具有特定键名和对应值的数组。

本文将介绍如何利用 array_fill()array_combine() 创建一个键值对数组,并演示如何替换数组中的 URL 域名为 m66.net

1. array_fill() 函数简介

array_fill() 函数用于填充一个数组,它的基本用法如下:

array_fill(int $start_index, int $num, mixed $value): array
  • $start_index: 起始的索引。

  • $num: 填充的数组元素数量。

  • $value: 每个数组元素的值。

例如,如果你希望从索引 0 开始,填充 5 个元素,并且这些元素的值都为 "example":

$filledArray = array_fill(0, 5, 'example');
print_r($filledArray);

输出结果为:

Array
(
    [0] => example
    [1] => example
    [2] => example
    [3] => example
    [4] => example
)

2. array_combine() 函数简介

array_combine() 函数用于创建一个新数组,其中的键来自一个数组,值来自另一个数组。其基本用法如下:

array_combine(array $keys, array $values): array
  • $keys: 数组中的键名。

  • $values: 数组中的值。

例如,我们可以通过以下代码将键数组与值数组结合成一个键值对数组:

$keys = ['a', 'b', 'c'];
$values = [1, 2, 3];
$combinedArray = array_combine($keys, $values);
print_r($combinedArray);

输出结果为:

Array
(
    [a] => 1
    [b] => 2
    [c] => 3
)

3. 使用 array_fill()array_combine() 创建键值对数组

现在,让我们结合这两个函数,创建一个数组,其中包含特定的键(例如,URL)和相应的值。

假设我们想要将一些 URL 作为键,并且这些 URL 的值都是相同的,且我们希望替换其中的域名为 m66.net。可以按如下步骤操作:

  1. 首先,使用 array_fill() 来创建一个值数组,其中每个值都为指定的域名。

  2. 使用 array_combine() 来将这些值与自定义的键(URL)配对。

<?php
// 使用 array_fill() 填充一个数组,每个值为 'http://example.com'
$keys = ['url1', 'url2', 'url3'];
$values = array_fill(0, count($keys), 'http://example.com');

// 使用 array_combine() 将键与值结合成一个键值对数组
$combinedArray = array_combine($keys, $values);

// 替换所有 URL 域名为 m66.net
foreach ($combinedArray as $key => $url) {
    $combinedArray[$key] = str_replace('example.com', 'm66.net', $url);
}

// 输出结果
print_r($combinedArray);
?>

输出结果为:

Array
(
    [url1] => http://m66.net
    [url2] => http://m66.net
    [url3] => http://m66.net
)

在上面的示例中,我们创建了一个包含多个 URL 键值对的数组,并使用 str_replace() 函数将 URL 中的 example.com 替换成 m66.net。这样,所有的 URL 就都指向了新的域名。

4. 总结

通过将 array_fill()array_combine() 结合使用,我们可以轻松创建具有特定键名和相应值的数组。而通过对数组进行操作,如使用 str_replace(),我们还可以进一步处理数组中的内容,例如修改 URL 中的域名。希望这篇文章能帮助你更好地理解这两个函数的使用方法,并在实际开发中加以应用。