Categories: IT

php에서 클래스(class), 인스턴스(instance), 메소드(method), 함수(funtion) 개념 쉽게 이해하기

생활코딩에서 php언어를 공부하고 있는 중입니다. 공부하면서 이해하고 있는 것들을 적어볼건데요.
<?php
$file = new SplFileObject(‘data.txt‘);
var_dump($file->isfile());
var_dump($file->isdir());
var_dump($file->fread($file->getsize()));
$file->fwrite(rand(1,100));
 
$file2 = new SplFileObject(‘data.txt’);
var_dump($file2->isfile());
var_dump($file2->isdir());
var_dump($file2->fread($file2->getsize()));
$file2->fwrite(rand(1,100));
?>
위와같은 코드가 있다라고 했을 때 클래스, 인스턴스, 매소드, 스테이트가 어떤건지 아래에 적었습니다.

  • SplFileObject : 클래스(Class)
  • $file, $file2 : 인스턴스(Instance)
  • isfile, isdir, fread : 메소드 혹은 함수(Method,funtion)
  • data.txt, data2.txt : 상태(state.스테이트)

위의 두가지 인스턴스들은 각각 다른 상태를 가지고 있기 때문에 메소드를 호출했을 때 매소드가 다르게 동작한다라고 읽을 수 있는데요. 저만의 방법으로 좀 더 쉽게 이해해본 내용은요.
공장을 예로 들어봅니다. 메소드들의 기능은 같죠. 자르는 메소드, 붙이는 메소드가 있다고 했을 때 그것들은 하나의 단순한 기계라고 볼 수 있겠습니다. 자르는 기능, 붙이는 기능이 있는 기계말입니다. 그리고 클래스는 설계도입니다. 그리고 인스턴스는 만들어진 제품이죠.
첫번째 코드를 읽어보면요. data.txt라는 원자재를 splfileobject라는 설계도로 가공하면 file이라는 제품이 나온다는겁니다. 그것이 결론이고요. 그럼 그 file이라는 제품이 나오기까지 어떤 과정을 거치냐하면 isfile 가공도하고 isdir가공도하고 fread가공도 하는것입니다.
file2라는 제품을 만드는것도 비슷합니다. file과 file2가 색깔이 다른 제품이라고 했을 때 둘이 만드는 방식은 같습니다. 다만 data.txt가 빨간색이라면 file가 빨간색이 될 것이고, data2.txt가 파란색이면 결과물인 file2도 파란색이 될 것입니다. 이것이 제가 공부하면서 이해해본 클래스, 인스턴스, 메소드들입니다. 독학이기 때문에 맞는지 알수는 없지만 비슷한 개념일 것 같고 혹시 제가 이상하게 이해하고 있다면 제보 부탁드립니다.

DDable

Recent Posts

250904 주짓수 처음으로 참여

처음으로 도복을 입고 띠를 메고 매트에 올라가 참여했다. 기본체조를 하고나서 사람들은 기본동작들을 차례로 돌아가며 하는데…

2일 ago

챗GPT 그래프 차트가 한글깨짐으로 빈 네모가 나올때 해결방법

챗gpt를 사용중인데 차트를 그려달라고 하면 꼭 한글이 깨져서 제목, 범례 등이 빈 네모로 나올때가 많다.…

2일 ago

250908 주짓수 둘째날

이제 둘째날이다. 원래 5일 금요일에 갔어야했지만 금요일이라 탁구를 쳐야했다. 첫째날에 새우빼기를 해서 그런가 어깨에 멍도…

3일 ago

250903 쥬브젠 해버렸다

피부과에서 9회코스로 하던거 끝나니 바로 상담 들어왔고 팔자주름 때문에 쥬브젠 권하길래 바로 해버렸음ㅋㅋㅋ 근데 알고보니…

1주 ago

250828 주짓수 시작함

주짓수나 권투를 해보고 싶었는데 새로운걸 시작하는게 귀찮아서 하지 않고 있었다. 그러다 탁구장에서 결심하게 됐다. 탁구장에…

2주 ago

의지와 믿음이면 암도 이겨낸다

대장, 췌장, 간, 혈액암까지 총 4개 암과 싸워서 이긴 김용해 회장 https://www.chosun.com/medical/2025/08/08/52THG2ZDDZAGDM7QJWDVZMUD44 미쳐따 미쳐써!! 기적이고,…

1개월 ago