> 백엔드 개발 > PHP 튜토리얼 > PHP의 URL에서 동일한 이름을 가진 여러 매개변수를 검색하는 방법은 무엇입니까?

PHP의 URL에서 동일한 이름을 가진 여러 매개변수를 검색하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-12-03 04:26:11
원래의
108명이 탐색했습니다.

How to Retrieve Multiple Parameters with the Same Name from a URL in PHP?

PHP의 URL에서 동일한 이름을 가진 여러 매개변수 검색

웹 애플리케이션에서 URL에는 정보를 PHP 스크립트에 전달하기 위한 여러 매개변수가 포함되는 경우가 많습니다. 그러나 PHP의 $_GET 함수는 일반적으로 주어진 매개변수에 대한 마지막 값만 반환합니다. URL에 동일한 이름을 가진 여러 매개변수가 있는 경우 문제가 될 수 있습니다.

이 예제 URL을 고려하세요.

http://example.com/index.php?param1=value1&param2=value2&param1=value3
로그인 후 복사

이 경우 $_GET['param1']는 반환됩니다. "value3", 이전 값("value1")을 덮어씁니다.

이 문제를 처리하려면 다음 코드 조각을 사용하면 됩니다. 사용:

$query = explode('&', $_SERVER['QUERY_STRING']);
$params = array();

foreach ($query as $param) {
    // To prevent errors, ensure each element has an equals sign.
    if (strpos($param, '=') === false) {
        $param .= '=';
    }

    list($name, $value) = explode('=', $param, 2);
    $params[urldecode($name)][] = urldecode($value);
}
로그인 후 복사

이 코드는 각 키가 매개변수 이름에 해당하고 각 값이 해당 매개변수와 연관된 모든 값을 포함하는 배열인 연관 배열을 생성합니다. 위의 예제 URL의 경우 결과 $params 배열은 다음과 같습니다.

array(
    'param1' => array('value1', 'value3'),
    'param2' => array('value2')
)
로그인 후 복사

이 방법을 사용하면 매개변수가 여러 번 발생하는지 여부에 관계없이 URL에서 각 매개변수와 연관된 모든 값에 쉽게 액세스할 수 있습니다. .

위 내용은 PHP의 URL에서 동일한 이름을 가진 여러 매개변수를 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿