>백엔드 개발 >PHP 튜토리얼 >PHP에서 '엄격한 표준: 변수만 참조로 전달해야 합니다.' 경고가 나타나는 이유는 무엇입니까?

PHP에서 '엄격한 표준: 변수만 참조로 전달해야 합니다.' 경고가 나타나는 이유는 무엇입니까?

DDD
DDD원래의
2024-12-22 12:47:28717검색

Why Am I Getting the

엄격한 표준 이해하기: 변수만 참조로 전달해야 함

"엄격한 표준: 변수만 참조로 전달해야 함" 참조' 경고가 발생하는 경우 근본적인 원인과 적절한 해결 방법을 이해하는 것이 중요합니다. 이 경고는 엄격한 표준에 따라 표현식이 변수가 아닌 참조로 전달될 때 발생합니다.

주어진 코드 조각에서:

$el = array_shift($instance->find(..))

이 코드는 $instance- >find(...)는 변수가 아닌 배열을 반환하는 표현식입니다. 배열을 반환하는 메서드가 변수와 동일하게 처리될 것으로 예상할 수 있으므로 이 동작은 직관적이지 않습니다.

엄격 모드에서 이 오류를 해결하려면 다음 옵션을 고려하세요.

  • 참조 사용을 제거하기 위해 메소드 서명을 수정합니다.
function test_arr($a) {
    var_dump($a);
}
  • If 메소드 시그니처 수정이 불가능할 경우 중간 변수를 도입할 수 있습니다.
$inter = get_arr();
$el = array_shift($inter);

경고의 성격을 이해하고 이러한 솔루션을 적용하면 문제를 효과적으로 해결하고 엄격한 표준을 준수할 수 있습니다. .

위 내용은 PHP에서 '엄격한 표준: 변수만 참조로 전달해야 합니다.' 경고가 나타나는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.