본문 바로가기
프로그래밍/PHP

[PHP] 기초문법 - 변수 / 객체에 대한 개념

by B T Y 2017. 7. 29.
반응형

php 기초문법 - 변수 / 객체에 대해서 정리한다.

 


* PHP에서 변수를 표현할때는 변수이름 앞에 $를 붙여 표현해준다.
( 예를들어 name이라는 변수는 $name이라고 표현한다 )


* PHP에서 변수 타입은 변수 값의 내용에 따라 결정되기 때문에 따로 지정해주지 않아도 되지만
 특정한 변수 타입으로 지정하고 싶을땐 아래와 같은 방법을 이용한다.

 

- 특정 변수 타입 지정 방법

 

$foo = (int) $bar;

 

(int), (integer) - 정수형으로 변환
(real), (double), (float) - 실수형으로 변환
(string) - 문자열로 변환
(array) - 배열로 변환
(object) - 객체로 변환


 

- 변수의 종류

진리값, 정수, 실수, 문자열, 배열, 객체, 리소스, 널

 

* 진리값( boolean ): True(참) or False(거짓)

 

* 정수( Integer ): 1234(십진수), -123(음수), 0123(8진수), 0x12(16진수)
  - 보통 4byte의 메모리를 차지하게 되고 0은 거짓, 다른 모든값은 참을 나타낸다.

 

* 실수( float & doubles ): 1.234, 1.2e3(e3은 10의 3승인 1000을 의미)
  - 소수점 윗자리와 아랫자리 모두를 표현하기 위해 8byte 메모리를 차지한다.

 

* 문자열( String ): 큰 따옴표("), 작은 따옴표('), 상속 문법을 이용한 방법
  - 큰 따옴표를 이용하면 해당 범위안에 있는 내용들 중 특수문자가 있다면 파싱을 통해 해당 기능을 실행하게 된다.
    ( 파싱을 한다는 뜻은 그대로 출력해주는 작은 따옴표와 달리 한단계 절차가 더 있다는걸 의미하기 때문에 미묘하지만
      작은 따옴표가 조금더 빠른 처리를 한다는점을 알 수 있다 )

 

  - 문자열끼리 서로 붙일때는 파이썬에서 "+" 기호를 사용하듯이 "."을 사용해서 붙인다.

 

특수문자          의미
   \n                   개행문자 ( 줄 바꿈 )
   \r                   캐리지 리턴
   \\                   역 슬래쉬
   \t                   수평 탭
   \"                   따옴표
   \$                   달러 표시

 

 

( 큰 따옴표를 이용하면 안에 있는 변수를 파싱해서 변수값 그대로 보여준다 )

 


* 배열( Array ): 숫자형 인덱스를 이용해 값을 저장하거나 문자로 구분하여 값을 저장할수 있다.
    - php는 다차원 배열을 지원한다.
    ( 배열에 관련된 여러가지 함수도 지원하는데
http://www.php.net/manual/kr/ref.array.php에서 참고 가능하다 )

 

    - 다차원 배열에서 파이썬과 같이 a="hello"와 같은 str변수를 하나의 배열처럼 숫자형 인덱스로 접근하는건

     되지 않는 모양이다...

 

 

( 배열을 저장하는 방법은 여러가지가 있으며 array를 이용하는 방법이 가장 기본적인 방법이다 )

 

 

( 다차원 배열을 이용할때는 array에 array를 감싸주는것 외에 특별한 점은 없다 )

 


* 객체( Object ): 객체는 OOP( object-oriented programming)개념을 가지고 있고 객체지향프로그래밍이라고 불리는데

                        이는 모든 사물을 객체로 생각하는 관점이다.
                        ( 객체는 메소드<기능>프로퍼티<속성>를 가지고 있다 )

 

   - 객체를 생성하기 위해서는 생성하는 class 앞에 new를 적어주고 메소드나 프로퍼티에 접근하기 위해서는 "->" 기호를

    이용한다.

 

 

( 객체를 생성할때는 new를 이용 메소드나 프로퍼티에 접근할때는 "->" 이용해준다 )

 

 

( Baby 클래스는 Human 클래스를 상속 받았기 때문에 Human의 메소드 또한 이용이 가능하다 )


* 널( NULL ): 아무것도 없는 값을 나타내는 변수이다.


 

반응형

댓글