PHP에서 OOP의 메서드 집합으로서의 클래스
때로는 비슷한 주제의 메서드를 그룹화하기 위해 클래스를 사용합니다. 이 경우 일반적으로 이 클래스의 객체는 하나만 생성되며, 그 메서드는 다양한 상황에서 여러 번 사용됩니다.
예제를 통해 살펴보겠습니다. 숫자 배열을 조작하는 클래스를 만들어 보겠습니다:
<?php
class ArrHelper {
}
?>
이 클래스의 각 메서드는 매개변수로 배열을 받아 지정된 작업을 수행합니다. 예를 들어, 다음과 같은 메서드가 있다고 가정해 보겠습니다:
<?php
class ArrHelper {
public function getSum($arr) {
// 요소의 합계
}
public function getAvg($arr) {
// 산술 평균
}
}
?>
이 메서드들의 구현을 작성해 보겠습니다:
<?php
class ArrHelper {
public function getSum($arr) {
$res = 0;
foreach ($arr as $num) {
$res += $num;
}
return $res;
}
public function getAvg($arr) {
$len = count($arr);
if ($len > 0) {
$sum = $this->getSum($arr);
return $sum / $len;
} else {
return 0;
}
}
}
?>
이 메서드들을 어떻게 사용하는지 살펴보겠습니다. 우리 클래스의 객체를 생성해 보겠습니다:
<?php
$arrHelper = new ArrHelper();
?>
우리 객체를 사용하여 다양한 배열의 숫자 합계를 찾아보겠습니다:
<?php
$sum1 = $arrHelper->getSum([1, 2, 3]);
var_dump($sum1);
$sum2 = $arrHelper->getSum([3, 4, 5]);
var_dump($sum2);
?>
문자열의 정확성을 확인하는
Validator 클래스를
만드세요.
문자열이 올바른 email인지 확인하는
isEmail 메서드를
클래스에 추가하세요.
문자열이 올바른 도메인 이름인지 확인하는
isDomain 메서드를
클래스에 추가하세요.
문자열이 숫자만 포함하는지 확인하는
isNumber 메서드를
클래스에 추가하세요.