PHP/PHP 에러 해결 모음

PHP Undefined variable 경고 해결 가이드 - 변수 선언 누락 주의!

backend.log 2025. 4. 10. 18:00
728x90
반응형

📌 PHP Undefined variable 경고 해결 가이드 - 변수 선언 누락 주의!

다음과 같은 PHP 경고 메시지를 보신 적 있나요?

Notice: Undefined variable: name in /var/www/html/index.php on line 5

이 경고는 PHP가 선언되지 않은 변수를 사용했을 때 발생합니다.


🧨 주요 원인

  • 변수 선언 없이 값을 사용하려고 할 때
  • 조건문/반복문 내부에서만 변수 선언했을 경우
  • 함수 내부 변수와 외부 변수를 혼동했을 경우
  • 폼 데이터나 외부 입력값이 없는 상태에서 바로 접근
<?php
  echo $username; // ← 변수 선언 전 사용
?>

🛠 해결 방법

1. 변수 선언 확인

<?php
  $username = "홍길동";
  echo $username;
?>

2. isset() 또는 empty() 함수로 체크

<?php
  if (isset($username)) {
    echo $username;
  } else {
    echo "사용자 이름이 설정되지 않았습니다.";
  }
?>

3. $_POST, $_GET 등 외부 입력값 확인

<?php
  if (!empty($_POST['email'])) {
    $email = $_POST['email'];
    echo $email;
  }
?>

4. 함수 내 지역 변수와 전역 변수 구분

<?php
  $value = 10;

  function test() {
    global $value;
    echo $value;
  }

  test();
?>

✅ 실무 팁

  • 초기화 습관: 모든 변수는 사용 전에 기본값으로 초기화하세요.
  • 코드 검토 시 IDE 경고에 주의하세요.
  • 불필요한 오류 출력을 줄이기 위해 error_reporting() 활용

📚 관련 글

🧩 PHP 에러 시리즈 전체 보기

 

728x90
반응형