>  기사  >  백엔드 개발  >  PHP를 통해 GET 매개변수를 얻는 방법

PHP를 통해 GET 매개변수를 얻는 방법

PHPz
PHPz원래의
2023-03-31 09:10:445031검색

웹 개발에서 PHP는 널리 사용되는 백엔드 언어입니다. PHP로 애플리케이션을 작성할 때 매우 일반적인 질문은 GET 요청을 통해 URL에서 매개변수를 가져오는 방법입니다. 이 기사에서는 이 문제를 살펴보고, PHP를 통해 GET 매개변수를 얻는 방법을 논의하고, 몇 가지 팁과 고려 사항을 소개합니다.

먼저 PHP를 사용하여 GET 매개변수를 얻는 방법을 살펴보겠습니다. PHP를 사용하여 GET 매개변수를 얻는 것은 매우 간단합니다. $_GET 변수를 사용하기만 하면 됩니다. GET 요청이 시작되고 매개변수가 제출되면 이러한 매개변수는 "?key=value" 형식으로 URL 끝에 추가됩니다. $_GET 변수에는 이러한 매개변수에 대한 키-값 쌍이 포함됩니다. 예를 들어, URL이 "http://example.com?name=John&age=30"이면 해당 $_GET 배열에는 "name" => "John" 및 "age" => "30" 키가 모두 포함됩니다. -값 쌍.

PHP를 사용하여 GET 매개변수를 가져오는 샘플 코드는 다음과 같습니다.

<?php
if(isset($_GET[&#39;name&#39;])) { // 检查是否传入了name参数
 $name = $_GET[&#39;name&#39;]; // 获取name参数的值
 echo "Hello, $name!";
}
?>

위 코드에서는 먼저 "name" 매개변수가 전달되었는지 확인합니다. 그렇다면 해당 값을 $name 변수에 저장하고 환영 메시지를 인쇄합니다. 문자열을 출력할 때 변수를 묶기 위해 큰따옴표를 사용한다는 점에 유의하세요. 이를 통해 PHP 파서는 변수 값을 문자열에 포함할 수 있습니다.

그러나 $_GET 변수를 사용하여 GET 매개변수를 얻는 것만으로는 충분히 안전하지 않습니다. 악의적인 사용자는 수동으로 URL을 구성하여 애플리케이션을 공격하려고 시도할 수 있습니다. 이 공격을 방지하려면 GET 매개변수를 검증하고 필터링하는 것이 좋습니다. 다음은 몇 가지 일반적인 필터링 및 유효성 검사 기술입니다.

  1. 매개변수가 존재하는지 확인하세요.

GET 매개변수를 처리할 때 정의되지 않은 변수를 사용하지 마세요. 정의되지 않은 GET 매개변수를 얻으려고 하면 PHP는 경고를 생성하여 애플리케이션의 취약점을 노출시킵니다. 이를 방지하려면 계속 진행하기 전에 해당 매개변수가 존재하는지 확인해야 합니다. 샘플 코드:

<?php
if(isset($_GET[&#39;name&#39;])) {
 $name = $_GET[&#39;name&#39;]; // 如果参数存在,获取参数值
} else {
 $name = &#39;&#39;; // 如果参数不存在,设置默认值
}
?>
  1. 매개변수 필터링 및 정리

GET 매개변수를 가져온 후 이를 필터링하고 정리하여 악의적인 공격을 방지해야 합니다. XSS(교차 사이트 스크립팅) 공격을 방지하려면 htmlspecialchars()를 사용하여 HTML 태그를 이스케이프해야 합니다. 샘플 코드:

<?php
if(isset($_GET[&#39;username&#39;])) {
 $username = htmlspecialchars($_GET[&#39;username&#39;]); // 获取参数并转义HTML标签
} else {
 $username = &#39;&#39;;
}
?>
  1. 매개변수 값의 유형 및 범위 확인

매개변수의 정확성을 보장하려면 매개변수 값의 유형 및 범위를 확인해야 합니다. 예를 들어 is_numeric() 함수를 사용하여 인수가 유효한 숫자인지 확인할 수 있습니다. 샘플 코드:

<?php
if(isset($_GET[&#39;age&#39;])) {
 if(is_numeric($_GET[&#39;age&#39;]) && $_GET[&#39;age&#39;] >= 1 && $_GET['age'] <= 100) {
   $age = $_GET[&#39;age&#39;];
 } else {
   $age = 0;
 }
} else {
 $age = 0;
}
?>

위 코드에서는 is_numeric() 함수를 사용하여 "age" 매개변수가 유효한 숫자인지 확인하고 조건문을 사용하여 "age" 매개변수가 1에서 100 사이인지 확인합니다. 인수가 유효한 숫자가 아니거나 범위가 올바르지 않으면 기본값을 설정합니다.

요약:

GET 요청을 통해 URL에서 매개변수를 가져오는 것은 웹 애플리케이션에서 일반적으로 필요합니다. PHP를 사용하여 GET 매개변수를 얻는 것은 매우 간단합니다. $_GET 변수를 사용하기만 하면 됩니다. 그러나 악의적인 공격을 방지하려면 GET 매개변수를 검증하고 필터링해야 합니다. 매개변수의 유효성을 검사할 때 매개변수가 존재하는지 확인하고 htmlspecialchars() 함수를 사용하여 HTML 태그를 이스케이프해야 합니다. 매개변수 필터링 시 매개변수의 종류와 범위를 확인하여 입력된 매개변수 값이 유효한지 확인해야 합니다. 이러한 팁을 통해 웹 애플리케이션의 보안을 강화하고 사용자 개인 정보 및 데이터 보안을 보호할 수 있습니다.

위 내용은 PHP를 통해 GET 매개변수를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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