웹해킹 스터디

인스턴스 변수 만들기

토픽 웹해킹 스터디 > PHP

수업소개

이 수업에서는 인스턴스마다 서로 다른 상태를 가지도록 하는 방법으로서 인스턴스 변수에 대해서 알아봅니다. 

수업

코드

<?php
class MyFileObject{
  function isFile(){
    return is_file($this->filename);
  }
}
$file = new MyFileObject();
$file->filename = 'data.txt';
var_dump($file->isFile());
var_dump($file->filename);

$file2 = new MyFileObject();
$file2->filename = 'data2.txt';
var_dump($file2->isFile());
var_dump($file2->filename);

참고

http://php.net/manual/en/language.oop5.properties.php

댓글

댓글 본문
  1. enujo
    24.01.05 make variable 더이상 사용되지 않음
  2. 드림보이
    2022.01.22. 인스턴스 변수 만들기 파트 수강완료
  3. ggyuker
    2022.01.21 수강완료
  4. jeisyoon
    2021.08.07 Create Instance Variable - OK

    MyFileObject : Class
    $file, $file2 : Instance
    isfile : Method, Behavior
    $this->filename : state (Instance Variable, Instance filed, Instance property)
  5. 매리미
    위 코드에는 인스턴스 변수 밖에 없는데 원글이 무슨 말인지 모르겠네요. 함수 내부에 변수 없는데.
    대화보기
    • 다른언어 처럼 클래스내부에서 private,public으로 맴버변수 정할 수있습니다.
      대화보기
      • 다른언어 처럼 클래스내부에서 private,public으로 맴버변수 정할 수있습니다.
        대화보기
        • ㅇㅇ
          되게 어이없는 언어네. class 내부에 변수 선언 안하고 함수 내부에서 선언하다니
        • yeshtml5.com
          이따금
          $file->$filename 이렇게 하지않고
          $file->filename 하는부분에 대해서는

          만약
          function 내부에 $filename = 'test"; 라는 값이 할당되어있을경우
          최종적으로는
          $file ->test 를 참조하게 됩니다. 당연 에러 혹은 다른값을 가져오게 됩니다.
        • Hyung Jun Choi
          class 내부에 멤버변수로 정의하지 않아도 사용가능하군요.. 동적언어라 그런것인지.. 여튼 확실하게 하기 위해서는 미리 정의해놓는게 좋을것같네요 ㅎ
        • uki408
          특이한 점이, 클래스 내부에 멤버 변수가 굳이 정의 되지 않더라도
          클래스 밖에서 클래스 멤버 변수를 정의하고 사용가능한점 이네요
          좀 더 찾아봐야겠어요.
        • 폭스킴
          인스턴스 변수에는 $를 붙이지 않는거죠? 특별한 이유가 있을까요?
        • dufuqsls
          좋은 말씀 감사합니다.