Menu
Coddy logo textTech

매개변수 타입 선언

Coddy PHP 여정의 기초 섹션에 포함된 레슨. 71개 중 65번째.

PHP는 느슨하게 타입화된 언어로, 변수가 어떤 타입의 데이터든지 저장할 수 있습니다. 이러한 유연성은 편리하지만, 함수가 잘못된 타입의 인수를 받을 때 예상치 못한 버그를 초래할 수 있습니다. 타입 선언을 사용하면 매개변수가 받아들여야 할 정확한 타입을 지정할 수 있습니다.

타입 선언을 추가하려면 매개변수 앞에 타입 이름을 배치하세요:

<?php
function double(int $number) {
    return $number * 2;
}

echo double(5);
?>

이는 10을 출력합니다. $number 앞의 int는 PHP에게 이 함수가 정수를 기대한다고 알려줍니다. 누군가가 "hello" 같은 문자열을 전달하면, PHP는 나중에 조용히 문제를 일으키는 대신 오류를 발생시킵니다.

여러 매개변수와 함께 타입 선언을 사용할 수 있습니다:

<?php
function greetUser(string $name, int $age) {
    return "$name is $age years old.";
}

echo greetUser("Alice", 25);
?>

일반적인 타입 선언에는 int, float, string, bool, 그리고 array가 포함됩니다. 이를 사용하면 코드가 더 예측 가능해지며, 프로그램이 커질수록 실수를 조기에 잡는 데 도움이 됩니다.

challenge icon

챌린지

쉬움

세 줄의 입력을 읽으세요:

  1. 사람의 이름 (예: Alice)
  2. 사람의 성 (예: Smith)
  3. 출생 연도 (예: 1995)

createProfile이라는 함수를 생성하세요. 이 함수는 타입 선언과 함께 세 개의 매개변수를 받아야 합니다:

  • $firstName as string
  • $lastName as string
  • $birthYear as int

이 함수는 사람의 나이를 계산해야 합니다 (현재 연도는 2024로 가정)하고 다음 형식의 문자열을 반환하세요:

[firstName] [lastName] is [age] years old.

입력 값으로 함수를 호출하고 반환된 결과를 출력하세요.

예제 1:

입력값이 Alice, Smith, 1995인 경우, 출력은 다음과 같아야 합니다:

Alice Smith is 29 years old.

예제 2:

입력값이 Bob, Johnson, 2000인 경우, 출력은 다음과 같아야 합니다:

Bob Johnson is 24 years old.

예제 3:

입력값이 Emma, Davis, 1988인 경우, 출력은 다음과 같아야 합니다:

Emma Davis is 36 years old.

직접 해보기

<?php
// 입력 읽기
$firstName = trim(fgets(STDIN));
$lastName = trim(fgets(STDIN));
$birthYear = intval(fgets(STDIN));

// TODO: createProfile 함수를 타입 선언과 함께 생성하세요
// 이 함수는 $firstName (string), $lastName (string), 그리고 $birthYear (int)를 받아야 합니다
// 나이를 계산하세요 (현재 연도는 2024)하고 형식화된 문자열을 반환하세요


// 함수를 호출하고 결과를 출력하세요
echo createProfile($firstName, $lastName, $birthYear);
?>
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: 온라인 PHP 컴파일러