Programming/PHP
[PHP] 접근 제어자 private
Developer 수한
2021. 6. 1. 20:38
PHP 접근 제어자 private
private는 같은 객체에서만 접근 가능하도록 설정하는 접근 제어자이다.
<?php
class MyfileObject {
// private로 객체 밖에서 접근하지 못하도록 설정한다.
private $filename;
function __construct($file) {
// file_exists -> 파일의 존재 유무를 boolean형으로 리턴하는 함수
if (!file_exists($this->filename)) {
die($this->filename . '존재하지 않는 파일입니다.');
}
}
function isFile() {
return is_file($this->filename);
}
}
// 위에서 정의한 클래스 객체를 생성
$file = new MyFileObject('data.txt');
// 위에서 생성된 객체 내의 filename이라는 변수에 접근
$file->filename = 'abcd.txt';
?>
위 코드의 클래스에서 정의된 $filename 은 접근 제어자가 private로 설정되어 클래스 외부에서는 접근을 못하도록 한다.
클래스 밖에서 객체를 생성하고 생성자를 통해 $filename 을 초기화하는 것은 가능하지만 마지막 줄에 적힌 것처럼 filename 을 클래스 외부에서 접근하려고 하면 오류가 발생한다.