Web
Php 분류

PHP 타입변환

작성자 정보

  • console 작성
  • 작성일

컨텐츠 정보

본문

자동 타입 변환(type juggling)

PHP에서는 변수를 선언할 때 타입을 명시할 필요가 없습니다.

왜냐하면, PHP에서 변수의 타입은 해당 변수에 대입하는 값에 따라 자동으로 결정되기 때문입니다.

이렇게 타입이 상황에 따라 자동으로 변환되는 것을 자동 타입 변환(type juggling)이라고 합니다.

 

따라서 PHP의 타입 강도(type strength)는 매우 약하며, 타입이 동적으로 결정됩니다.

예제

$var = "문자열"; // string

$var = 10;       // int

$var = 3.14;     // float

코딩연습 ▶


강제 타입 변환(type casting)

PHP에서는 변수에 값을 대입할 때마다 변수의 타입이 그것에 맞게 변하게 됩니다.

하지만 사용자가 직접 데이터의 타입을 변환해야 할 경우도 많습니다.

 

PHP에서는 이러한 강제 타입 변환을 타입 캐스트 연산자인 괄호(())를 사용하여 수행할 수 있습니다.

변환시키고자 하는 데이터나 변수의 앞에 괄호를 붙이고, 그 괄호 안에 변환할 타입을 적으면 됩니다.

예제

$var_01 = 10;

var_dump($var_01);           // int(10)  

$var_02 = (boolean) $var_01;

var_dump($var_02);           // bool(true)

 

$var_03 = 0;

var_dump($var_03);           // int(0)  

$var_04 = (boolean) $var_03;

var_dump($var_04);           // bool(false)

코딩연습 ▶


가변 변수(variable variables)

PHP에서는 변수의 타입뿐만 아니라 변수의 이름까지 동적으로 바꿀 수 있습니다.

이러한 변수를 가변 변수(variable variables)라고 하며, 해당 변수의 값을 또 다른 변수의 이름으로 취급합니다.

예제

$PHP = "HTML";

$HTML = "CSS";

$CSS = "JavaScript";

$JavaScript = "Ajax";

$Ajax = "PHP";  

 

echo $PHP;       // HTML

echo $$PHP;      // $HTML -> CSS

echo $$$PHP;     // $$HTML -> $CSS -> JavaScript

echo $$$$PHP;    // $$$HTML -> $$CSS -> $JavaScript -> Ajax

echo $$$$$PHP;   // $$$$HTML -> $$$CSS -> $$JavaScript -> $Ajax -> PHP

echo $$$$$$PHP;  // $$$$$HTML -> $$$$CSS -> $$$JavaScript -> $$Ajax -> $PHP -> HTML

echo $$$$$$$PHP; // $$$$$$HTML -> $$$$$CSS -> $$$$JavaScript -> $$$Ajax -> $$PHP -> $HTML -> CSS ...

코딩연습 ▶

 

위의 예제에서 알 수 있듯이 PHP에서는 달러($) 기호를 사용하여 변수의 이름을 유동적으로 설정하거나 사용할 수 있습니다.

관련자료

댓글 0
등록된 댓글이 없습니다.
전체 40 / 2 페이지
RSS
  • PHP 증감연산자
    등록자 console
    등록일 01.05 조회 2238

    Php 증감 연산자(increment and decrement operator) 증감 연산자는피연산자를 1씩 증가 혹은 감소시킬 때사용하는 연산자입니다…

  • PHP 대입연산자
    등록자 console
    등록일 01.05 조회 2306

    Php 대입 연산자(assignment operator) 대입 연산자는변수에 값을 대입할 때 사용하는 이항 연산자이며, 피연산자들의 결합 방향은 오른쪽…

  • PHP 산술연산자
    등록자 console
    등록일 01.05 조회 2307

    Php 연산자(operator) PHP는다양한 연산을 위해많은 종류의 연산자를 제공하고 있습니다. 산술 연산자(arithmetic operator) 산…

  • PHP 타입변환
    등록자 console
    등록일 01.05 조회 2712

    Php 자동 타입 변환(type juggling) PHP에서는 변수를 선언할 때 타입을 명시할 필요가 없습니다. 왜냐하면, PHP에서 변수의 타입은 해…

  • PHP 기본타입
    등록자 console
    등록일 01.05 조회 2327

    Php 기본 타입 타입(data type)이란 프로그램에서 다룰 수 있는 값의 종류를 의미합니다. PHP에서는여러 가지 형태의 타입을 미리 정의하여제공…

  • PHP 상수
    등록자 console
    등록일 01.05 조회 2529

    Php 상수(constant) 상수(constant)란 변수와 마찬가지로 데이터를 저장할 수 있는 메모리 공간을 의미합니다. 하지만 상수가 변수와 다른…

  • PHP 변수의 종류
    등록자 console
    등록일 01.05 조회 2246

    Php 변수의 종류 PHP에서 변수는스크립트 내 어느 곳에서나 선언할 수 있습니다. 변수의 유효 범위(variable scope)란 특정변수를참조되거나…

  • PHP 변수
    등록자 console
    등록일 01.05 조회 2194

    Php 변수(variable) 변수(variable)란 데이터(data)를 저장하기 위해 프로그램에 의해 이름을 할당받은 메모리 공간입니다. 즉, 변수…

  • PHP 문법
    등록자 console
    등록일 01.05 조회 2253

    Php PHP 코드 영역 PHP 코드는 웹 페이지의 어느 부분에나 위치할 수 있습니다. 따라서 PHP 파서가 PHP 코드를 인식하기 위해서는 그 시작과…

  • PHP 작동원리
    등록자 console
    등록일 01.05 조회 2340

    Php 웹 프로그래밍 언어 웹 시스템 중 서버 측에서 실행되는 서버 사이드 언어를 웹 프로그래밍 언어라고도 부릅니다. 이러한 웹 프로그래밍 언어 중 많…

  • PHP 소개
    등록자 console
    등록일 01.05 조회 2522

    Php PHP란? PHP(PHP: Hypertext Preprocessor)는 C언어를 기반으로 만들어진 서버 측에서 실행되는 서버 사이드 스크립트 언…

  • PHP 개요
    등록자 console
    등록일 01.05 조회 2230

    Php 웹 시스템(web system) 우리가 매일 사용하고 있는 인터넷을 구성하는 시스템을 웹 시스템(web system)이라고 합니다. 이러한 웹 …

  • php 기초 문법
    등록자 console
    등록일 01.05 조회 2351

    Php 변수 php에서는 데이터형의 선언이 없으며 JavaScript과 같은 var도 없다. 맨 처음에는 $를 붙여서 변수를 선언한다. $msg = "…

  • [그누보드] 그누보드 기초_그누보드 테마의 상수, 파일 용도
    등록자 console
    등록일 01.04 조회 3381

    Php 1.기본구조 테마에는 상당히 많은 파일이 포함되어 있습니다만 핵심 파일은 head.php, index.php, tail.php 파일입니다. 테마…

  • [그누보드] 그누보드 설치
    등록자 console
    등록일 01.03 조회 2366

    Php 0.1 그누보드 설치전 PHP 5.2.17 이상 (PHP7.2 이상 권장) MySQL 5.0 이상 or MySQL 5.0 이상의 기능을 만족하는…