PHP - 기본 인수
PHP 프로그래밍의 세계로 여러분을 환영합니다! 오늘 우리는 PHP의 가장 강력한 기능 중 하나인 기본 인수(default arguments)에 깊이 다룰 것입니다. 이 기능은 단순한 트릭이 아닙니다; 코드를 더 읽기 쉽고 유지보수하기 쉽게 만들 수 있습니다. 그럼 시작해 보겠습니다!
기본 인수는 무엇인가요?
PHP에서는 함수 매개변수에 기본 값을 정의할 수 있습니다. 이는 특정 매개변수에 대해 값을 제공하지 않고 함수를 호출할 때, PHP가 자동으로 기본 값을 사용하게 됩니다. 이는 함수에 선택적 매개변수를 제공하고 싶을 때 특히 유용합니다.
가령, 사각형의 면적을 계산하는 함수가 있다고 가정해 봅시다. 기본적으로 사각형의 변의 길이를 1 유닛으로 가정할 수 있습니다. 하지만 다른 크기의 사각형의 면적을 계산하고 싶다면 어떻게 하나요? 이때 기본 인수가 유용하게 사용됩니다.
예제 1: 기본 인수의 기본 사용법
간단한 예제로 시작해 보겠습니다. 사각형의 면적을 계산하는 함수를 만들어 보겠습니다. 이 함수는 두 개의 매개변수 $length
와 $width
을 받아들이며, 둘 다 기본값이 1입니다.
function calculateRectangleArea($length = 1, $width = 1) {
return $length * $width;
}
echo calculateRectangleArea(); // 출력: 1 (기본 값 사용)
echo calculateRectangleArea(5); // 출력: 5 (length 제공, width 기본 값 사용)
echo calculateRectangleArea(5, 3); // 출력: 15 (length와 width 모두 제공)
이 예제에서, calculateRectangleArea()
를 인수 없이 호출할 때, 기본 값을 $length
와 $width
으로 사용합니다. 인수 하나만 제공하면, 그 값을 $length
로 사용하고 $width
는 기본 값을 사용합니다. 두 개의 인수를 모두 제공하면, 그 특정 값을 사용합니다.
예제 2: 배열과 함께 사용하는 기본 인수
이제 약간 더 복잡한 예제로 넘어가 보겠습니다. 수학의 합을 계산하는 함수를 만들어 보겠습니다. 사용자가 배열을 제공하거나 제공하지 않을 수 있도록 기본 인수를 사용할 수 있습니다.
function sumNumbers($numbers = []) {
$total = 0;
foreach ($numbers as $number) {
$total += $number;
}
return $total;
}
echo sumNumbers(); // 출력: 0 (기본 빈 배열)
echo sumNumbers([1, 2, 3]); // 출력: 6 (배열 제공)
이 예제에서, sumNumbers()
를 인수 없이 호출할 때, 기본적으로 빈 배열을 사용합니다. 배열을 제공하면, 함수는 배열의 요소를 합산합니다.
예제 3: 기본 인수와 객체 지향 프로그래밍
PHP는 객체 지향 프로그래밍을 지원하며, 클래스 메서드에서도 기본 인수를 사용할 수 있습니다. 간단한 차량 클래스를 사용하여 이를 보여드리겠습니다.
class Car {
private $make;
private $model;
private $year;
function __construct($make = "Unknown", $model = "Unknown", $year = 2000) {
$this->make = $make;
$this->model = $model;
$this->year = $year;
}
function getCarDetails() {
return "Make: $this->make, Model: $this->model, Year: $this->year";
}
}
$car1 = new Car(); // 모든 기본 값 사용
echo $car1->getCarDetails(); // 출력: Make: Unknown, Model: Unknown, Year: 2000
$car2 = new Car("Toyota", "Camry"); // year 만 기본 값 사용
echo $car2->getCarDetails(); // 출력: Make: Toyota, Model: Camry, Year: 2000
$car3 = new Car("Honda", "Civic", 2020); // 모든 값을 제공
echo $car3->getCarDetails(); // 출력: Make: Honda, Model: Civic, Year: 2020
이 예제에서, Car
클래스의 생성자는 세 개의 매개변수에 기본 값을 정의하고 있습니다. 인수 없이 새로운 Car
객체를 생성하면 기본 값을 사용합니다. 일부 인수를 제공하면, 제공된 값을 사용하고 나머지는 기본 값을 유지합니다.
결론
기본 인수는 PHP에서 강력한 기능으로, 코드를 더 유연하고 사용하기 쉽게 만들 수 있습니다. 이를 통해 함수와 클래스에 선택적 매개변수를 제공할 수 있어, 코드의 재사용성과 적응성을 높일 수 있습니다. 기본 인수를 사용하는 문맥과 사용 사례를 항상 고려하고, 적절한 사용을 확인하세요.
이 튜토리얼이 PHP의 기본 인수에 대한 명확한 이해를 제공해 주길 바랍니다. 프로그래밍 여정을 계속하면서 이 개념을 마스터하면, 더 고급 주제와 기술로의 문을 열 수 있을 것입니다. 즐거운 코딩을!
Credits: Image by storyset