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