>백엔드 개발 >PHP 튜토리얼 >PHP는 변수 이름의 마침표를 어떻게 처리하고 어떻게 해결할 수 있나요?

PHP는 변수 이름의 마침표를 어떻게 처리하고 어떻게 해결할 수 있나요?

Patricia Arquette
Patricia Arquette원래의
2024-12-10 18:58:11284검색

How Does PHP Handle Periods in Variable Names, and How Can I Work Around It?

PHP의 점 변환: 이해 및 해결 방법

이름에 마침표가 있는 요청 필드나 쿠키를 전달하면 PHP는 자동으로 이를 밑줄로 바꿉니다. 이러한 동작은 방해가 될 수 있으므로 예방하고 싶을 수도 있습니다.

PHP 설명

PHP.net에 따르면 점은 PHP에서 유효한 문자가 아닙니다. 변수 이름. 의도하지 않은 연결 문제를 방지하기 위해 PHP는 자동으로 변수 이름의 점을 밑줄로 변환합니다.

영향을 받는 추가 문자

점 외에도 PHP는 다음 문자도 밑줄로 변환합니다. :

  • 공간 (chr(32))
  • 여는 대괄호(chr(91))
  • ASCII가 아닌 다양한 문자(chr(128) - chr(159))

해결 방법

할 수 없기 때문에 PHP가 이 변환을 수행하지 못하게 하려면 해결 방법을 사용하여 밑줄을 다시 점으로 변환할 수 있습니다. 한 가지 가능한 방법은 str_replace 함수를 사용하는 것입니다.

$request_uri = str_replace('_', '.', $_SERVER['REQUEST_URI']);

이렇게 하면 요청 URI에서 모든 밑줄이 점으로 대체됩니다. 다른 이름-값 쌍(예: $_GET, $_POST, $_COOKIE)에도 동일한 접근 방식을 적용할 수 있습니다.

위 내용은 PHP는 변수 이름의 마침표를 어떻게 처리하고 어떻게 해결할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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