IMCAT.DEV
로그인 가입
PHP 입문 문법

PHP 변수와 상수

PHP 변수와 상수 — 초급

변수와 상수

1. 도입 (왜 배워야 하는가)

PHP에서 변수와 상수는 프로그래밍의 기본 개념으로, 데이터를 저장하고 조작하는 데 필수적인 역할을 합니다. 변수를 사용하면 프로그램 실행 중에 값이 변할 수 있는 공간을 제공하고, 상수를 사용하면 변하지 않는 고정된 값을 저장할 수 있습니다.

이 두 개념을 모르면 데이터를 관리하는 데 큰 어려움을 겪게 되며, 프로그램의 유연성과 안정성을 잃을 수 있습니다. 예를 들어, 사용자의 나이나 장바구니에 담긴 상품 수량을 동적으로 관리하려면 변수 사용이 필수적이며, 시스템의 설정값이나 API 키와 같은 변하지 않는 값은 상수로 관리해야 합니다.

2. 핵심 개념 설명

변수

변수는 데이터를 저장할 수 있는 메모리 공간입니다. 데이터를 저장하고 필요할 때마다 변경할 수 있습니다. 예를 들어, "사과의 개수"를 저장하는 변수는 상황에 따라 그 값이 달라질 수 있습니다.

상수

상수는 한 번 설정하면 그 값을 변경할 수 없는 저장 공간입니다. 예를 들어, 원주율(π)은 자연에서 변하지 않는 값이므로 상수로 저장하는 것이 적합합니다.

관련 용어 정리

용어설명
변수데이터를 저장하는 가변 메모리 공간
상수변경할 수 없는 고정된 값
스코프변수나 상수가 유효한 범위

3. 기본 코드 예제

변수 사용 예제

<?php
// 변수 선언 및 초기화
$apple_count = 5; // 사과의 개수를 5로 설정

// 변수 값 출력
echo "사과의 개수: " . $apple_count; // 사과의 개수를 출력
?>

실행 결과:

사과의 개수: 5
  • $apple_count = 5;: 변수 $apple_count에 숫자 5를 저장합니다.
  • echo "사과의 개수: " . $apple_count;: 변수의 값을 출력합니다. 문자열과 변수를 연결하여 화면에 표시합니다.
  • 상수 사용 예제

    <?php
    // 상수 정의
    define("PI", 3.14); // 원주율 상수 정의
    
    // 상수 값 출력
    echo "원주율: " . PI; // 상수 PI의 값을 출력
    ?>

    실행 결과:

    원주율: 3.14
  • define("PI", 3.14);: 상수 PI를 3.14로 정의합니다.
  • echo "원주율: " . PI;: 상수의 값을 출력합니다.
  • 4. 실전 활용 예제

    1. 쇼핑몰 장바구니 구현

    <?php
    // 장바구니 상품 수
    $product_count = 0;
    
    // 상품 추가 함수
    function addProduct() {
        global $product_count; // 전역 변수 사용
        $product_count++;
        echo "장바구니에 상품이 추가되었습니다. 현재 상품 수: " . $product_count . "\n";
    }
    
    // 상품 추가
    addProduct();
    addProduct();
    ?>

    상황 설명: 사용자가 장바구니에 상품을 추가할 때마다 상품 수를 세는 기능을 구현합니다.

    2. 사이트 설정 정보

    <?php
    define("SITE_NAME", "나의 쇼핑몰"); // 사이트 이름 상수
    
    echo "환영합니다! " . SITE_NAME; // 사이트 이름 출력
    ?>

    상황 설명: 상수로 사이트 이름을 정의하여 언제 어디서나 일관되게 사용할 수 있습니다.

    5. 흔한 실수와 주의사항

    1. 변수 초기화 누락

    <?php
    // 초기화하지 않은 변수를 사용
    echo $count; // 오류 발생
    ?>

    올바른 코드:

    <?php
    $count = 0; // 초기화
    echo $count; // 0 출력
    ?>
  • 변수는 사용하기 전에 반드시 초기화해야 합니다.
  • 2. 상수 재정의 시도

    <?php
    define("MY_CONSTANT", 10);
    define("MY_CONSTANT", 20); // 오류 발생
    ?>

    올바른 코드:

    <?php
    define("MY_CONSTANT", 10); // 처음 정의
    // 다시 정의하지 않음
    ?>
  • 상수는 한 번 정의하면 다시 정의할 수 없습니다.
  • 6. 정리

  • 변수는 데이터의 저장과 변화에 유용합니다.
  • 상수는 변하지 않는 값을 안전하게 저장합니다.
  • 변수를 사용하기 전에는 반드시 초기화해야 합니다.
  • 상수는 재정의가 불가능하므로 신중하게 정의해야 합니다.

다음에 학습하면 좋은 주제는 배열(Array)과 조건문(If statement)입니다. 이 주제들은 변수를 활용한 데이터 구조와 로직의 흐름을 이해하는 데 도움이 될 것입니다.