현재 위치: > 최신 기사 목록> PHP 오류 : 비 변동 참조 솔루션을 재 할당 할 수 없습니다

PHP 오류 : 비 변동 참조 솔루션을 재 할당 할 수 없습니다

gitbox 2025-06-16

1. PHP가 비 변동성 참조를 재 할당 할 수없는 오류 해결 시작

PHP에서는 비 변동 참조를 재 할당하려고 할 때 "가변 참조가 아니라 $ foo를 다시 할 수 없다"와 같은 오류 메시지가 발생할 수 있습니다. 이는 비 변동 유형 컨텐츠에 대한 참조를 할당하려고 시도하여 PHP가 오류를보고하고 프로그램 실행을 종료하게한다는 것을 나타냅니다. 이 기사는이 문제를 이해하고 해결하고 인용 메커니즘을 올바르게 사용할 수 있도록 도와줍니다.

2. 인용 기본

 
  $a = 10;
  $b = &$a;
  $b = 5; // $a is now 5

위의 코드에서 $ a는 10의 값이 할당되며 $ b는 $ a의 참조로 설정합니다. 이러한 방식으로 $ B가 수정되면 $ a의 값도 그에 따라 변경됩니다.

3.1 변수에 할당 할 수없는 참조 오류의 이유

PHP에서 참조를 사용하는 경우 상수 또는 기타 불변의 데이터 유형에 대한 참조를 할당하려고하면 "비 변동성 참조를 재 할당 할 수 없음"오류가 발생합니다. 다음 코드는 다음을 보여줍니다.

 
  $a = 10;
  $b = 20;
  $c = &$a;
  $c = $b; // Error: Cannot reassign reference
  $d = &$c;
  $d = 30;
  echo $a; // Outputs: 30
  echo $b; // Outputs: 20

이 코드는 참조되지 않은 변수 ($ b)를 참조 변수 ($ c)에 할당하려고 할 때 PHP가 오류를 던지는 것을 보여줍니다. 이 문제로 인해 프로그램이 실행을 중지하게됩니다.

3.2 솔루션

이 오류를 해결하려면 먼저 변수를 참조하기 전에 선언하십시오. 선언되지 않은 변수가 참조되면 PHP는 치명적인 오류를 반환합니다. 또한, "&"기호는 그 돌연변이를 보장하기 위해 기준 변수를 나타내는 데 사용됩니다. 수정 된 코드 예는 다음과 같습니다.

 
  $a = 10;
  $b = 20;
  $c = &$a;
  $c = $b;
  $d = &$c;
  $d = 30;
  echo $a; // Outputs: 30
  echo $b; // Outputs: 20

이 수정 된 코드에서는 참조가 올바르게 사용되며 사용하기 전에 변수가 선언되어 오류를 피합니다.

4. 결론

PHP의 참조 기능을 통해 여러 장소에서 동일한 변수의 값을 직접 수정할 수 있습니다. 그러나 참조를 사용할 때는 변수가 올바르게 정의되고 참조 할당 작업이 PHP의 구문 규칙을 따르는 것이 필요합니다. 이 기사의 도입을 통해 "비율을 재 할당 할 수 없음"오류를 효과적으로 피하고보다 효율적이고 안정적인 PHP 코드를 작성할 수 있다고 생각합니다.