> 백엔드 개발 > PHP 문제 > 채워서 배열을 만드는 방법을 배우는 PHP 배열

채워서 배열을 만드는 방법을 배우는 PHP 배열

青灯夜游
풀어 주다: 2023-03-11 21:42:02
원래의
2469명이 탐색했습니다.

이전 글 "PHP 배열 학습 1차원 배열 생성 및 초기화 방법(상세 코드 설명)"에서는 전통적인 배열 생성 방법 두 가지를 소개했습니다. "배열 요소에 직접 값을 할당"과 "array() 함수". 오늘은 배열 생성에 대해 이야기하고 배열을 만드는 두 가지 대체 방법을 살펴보겠습니다. array()函数”。今天我们再来谈谈数组的创建,介绍两种另类的数组创建方法,我们来看看吧。

在PHP中,我们还能够以填充方式来创建新数组,主要用到的函数为:array_fill()和array_fill_keys()。

  • array_fill():会以填充键值的方式来创建一个新数组

  • array_fill_keys():会以填充键名和键值的方式来创建一个新数组

下面我们通过代码示例来具体了解一下这两个函数。

1、array_fill()函数

<?php
$arr=array_fill(0,4,"hello");
var_dump($arr);
?>
로그인 후 복사

array_fill($index, $number, $value)函数接受3个不可省略的参数$index(起始索引)、$number(填充元素数量)和$value(用于填充的键值)。

其中,$index参数支持负值,数组索引有以下三种取值情况:

  • 如果为正数,则数组索引从$index值开始,到$index+$number-1值结束。例$index为2,$number为4,则数组索引为:2、3、4、5。

  • 如果为0,则数组索引从0开始,到$number-1值结束。例$index为0,$number为4,则数组索引为:0、1、2、3。

  • 如果为负数,则数组索引由 $index012, ...,$number-2 组成。例$index为-2,$number为4,则数组索引为:-2、0、1、2。

在上例中,array_fill(0,4,"hello")$index为0(索引从0开始)、$number为4(数组有四个元素),因此数组索引为:0、1、2、3;而$valuehello,则这四个元素的键值都为hello,因此输出结果为:

채워서 배열을 만드는 방법을 배우는 PHP 배열

在看两个示例:

<?php
$arr=array_fill(3,4,"hello");
var_dump($arr);
?>
로그인 후 복사

分析:索引从3开始、到3+4-1=6结束,数组的键值都为hello,因此输出结果为:

채워서 배열을 만드는 방법을 배우는 PHP 배열

<?php
$arr=array_fill(-2,4,"hello");
var_dump($arr);
?>
로그인 후 복사

输出结果为:

채워서 배열을 만드는 방법을 배우는 PHP 배열

$value参数不仅可以是单个数值/字符串,也可以是一个数组,那么创建的就是一个二维数组了。

<?php
header("Content-type:text/html;charset=utf-8");
$arr=array_fill(0,4,array("张三",25,"男"));
var_dump($arr);
?>
로그인 후 복사

输出结果为:

채워서 배열을 만드는 방법을 배우는 PHP 배열

2、array_fill_keys()函数

<?php
$keys=array("a","b","c","d");
$arr=array_fill_keys($keys,"hello");
var_dump($arr);
?>
로그인 후 복사

array_fill_keys($keys,$value)函数接受2个不可省略的参数$keys(包含填充键名的一个数组)、$value(填充键值)。

简单来说,array_fill_keys()函数会使用$keys数组中元素作为键名,$value作为值来填充出一个新数组。

从上面的代码示例可以看出:新数组有四个元素,键名分别为“a”、“b”、“c”、“d”;这四个元素的键值都为“hello”,因此输出结果为:

채워서 배열을 만드는 방법을 배우는 PHP 배열

array_fill_keys()和array_fill()函数一样,$valuePHP에서는 채우기를 통해 새 배열을 만들 수도 있습니다. 사용되는 주요 함수는 array_fill() 및 array_fill_keys()입니다.

  • array_fill(): 키 값을 채워 새 배열을 생성합니다 ​​

  • array_fill_keys(): 키 이름과 키 값을 채워 새 배열을 만듭니다. ​

채워서 배열을 만드는 방법을 배우는 PHP 배열 코드 예제를 통해 이 두 함수를 자세히 살펴보겠습니다.

1.array_fill() 함수

<?php
header("Content-type:text/html;charset=utf-8");
$keys=array("a","b","c","d");
$arr=array_fill_keys($keys,array("李四",21,"男"));
var_dump($arr);
?>
로그인 후 복사

array_fill($index, $number, $value) 함수 허용 생략할 수 없는 3개의 매개변수 $index(시작 인덱스), $number(채우는 요소 수) 및 $value(키 값 채우기에 사용됨) ). 그 중 $index 매개변수는 음수 값을 지원하며, 배열 인덱스는 다음 세 가지 값을 갖습니다.

  • 🎜 양수인 경우 배열 인덱스는 $index 값에서 시작하여 $index+$number-1 값으로 끝납니다. 예를 들어 $index는 2이고 $number는 4이면 배열 인덱스는 2, 3, 4, 5입니다. 🎜
  • 🎜0이면 배열 인덱스는 0부터 시작하여 $number-1 값으로 끝납니다. 예를 들어 $index는 0이고 $number는 4이면 배열 인덱스는 0, 1, 2, 3입니다. 🎜
  • 🎜음수인 경우 배열 인덱스는 $index, 0, 1로 구성되며, 2, ..., <code>$번호-2. 예를 들어 $index는 -2이고 $number는 4이면 배열 인덱스는 -2, 0, 1, 2입니다. 🎜
🎜위 예에서 array_fill(0,4,"hello")$index는 0입니다(색인은 0), $number는 4(배열에는 4개의 요소가 있음)이므로 배열 인덱스는 0, 1, 2, 3이고 $value입니다. hello code>이면 이 네 가지 요소의 키 값은 <code>hello이므로 출력 결과는 다음과 같습니다. 🎜🎜채워서 배열을 만드는 방법을 배우는 PHP 배열🎜🎜🎜두 가지 예를 보면: 🎜🎜rrreee🎜분석: 인덱스는 3부터 시작해서 끝납니다. 3+4-1 =6 끝에서 배열의 키 값은 모두 hello이므로 출력 결과는 🎜🎜채워서 배열을 만드는 방법을 배우는 PHP 배열🎜rrreee🎜출력 결과는 다음과 같습니다. 🎜🎜채워서 배열을 만드는 방법을 배우는 PHP 배열🎜🎜$value매개변수 🎜단일 값/문자열🎜일 뿐만 아니라 🎜배열🎜일 수도 ​​있습니다. 그러면 생성되는 것은 🎜2차원 배열🎜입니다. 🎜rrreee🎜출력 결과는 다음과 같습니다. 🎜🎜4 .png🎜🎜🎜2.array_fill_keys() 함수🎜🎜rrreee🎜array_fill_keys($keys,$value) function 생략할 수 없는 두 개의 매개변수 $keys(키 이름을 포함하는 배열)와 $value(키 값)를 허용합니다. 🎜🎜간단히 말하면 array_fill_keys() 함수는 $keys 배열의 요소를 키 이름으로 사용하고 $value를 값으로 사용하여 새 배열을 채웁니다. 🎜🎜위의 코드 예에서 볼 수 있듯이 새 배열에는 4개의 요소가 있고 키 이름은 "a", "b", " c", "<code>d"; 이 네 가지 요소의 키 값은 "hello"이므로 출력 결과는 다음과 같습니다. 🎜🎜채워서 배열을 만드는 방법을 배우는 PHP 배열🎜🎜array_fill_keys()는 동일합니다 array_fill() 함수, $value 값은 배열도 허용하므로 생성되는 것은 🎜2차원 배열🎜입니다. 🎜rrreee🎜출력 결과는 다음과 같습니다. 🎜🎜🎜🎜🎜그렇습니다. 다른 내용을 알고 싶다면 여기를 클릭하세요. → →🎜php 동영상 튜토리얼🎜🎜🎜마지막으로 PHP 배열에 대한 무료 동영상 튜토리얼을 추천합니다: 🎜PHP 함수 배열 배열 함수 동영상 설명🎜, 와서 배워보세요! 🎜

위 내용은 채워서 배열을 만드는 방법을 배우는 PHP 배열의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿