PHP 함수 소개—http_build_query()`: 빌드 URL 쿼리 문자열

王林
풀어 주다: 2023-07-26 12:58:02
원래의
4489명이 탐색했습니다.

PHP 함수 소개—http_build_query(): URL 쿼리 문자열 작성

PHP 개발에서는 일부 매개변수를 URL 쿼리 문자열로 결합해야 하는 시나리오를 자주 접하게 됩니다. 개발자가 이러한 매개변수를 처리하고 URL 사양을 준수하는 문자열로 변환할 수 있도록 하기 위해 PHP는 http_build_query() 함수를 제공합니다.

함수 소개
http_build_query() 함수는 연관 배열이나 객체를 URL 쿼리 문자열로 변환하는 매우 실용적인 함수입니다. 이 함수는 배열이나 객체의 키-값 쌍을 URL 사양에 맞는 문자열로 자동 변환하고 "&" 기호로 연결할 수 있습니다.

코드 예제
다음은 http_build_query() 함수를 사용하는 방법을 보여주는 코드 예제입니다.

<?php
$params = [
    'name' => 'John',
    'age' => 25,
    'city' => 'New York'
];

$queryString = http_build_query($params);
echo $queryString;
?>
로그인 후 복사

출력은 다음과 같습니다.

name=John&age=25&city=New+York
로그인 후 복사
로그인 후 복사

위 예제에서는 세 개의 매개변수가 포함된 연관 배열 $params를 정의합니다. 이름, 나이, 도시. 그런 다음 http_build_query() 함수를 사용하여 $params 배열을 URL 쿼리 문자열로 변환하고 결과를 $queryString 변수에 할당합니다. 마지막으로 echo 문을 사용하여 $queryString 값을 출력합니다.

매개변수 처리
http_build_query() 함수는 복잡한 매개변수 구조도 처리할 수 있습니다. 예를 들어 다차원 배열, 개체 및 특수 문자를 처리할 수 있습니다.

다차원 배열
$params 배열이 다차원 배열인 경우 http_build_query() 함수는 이를 URL 사양에 맞는 문자열로 자동 변환합니다.

<?php
$params = [
    'name' => 'John',
    'age' => 25,
    'city' => 'New York',
    'hobbies' => [
        'reading',
        'swimming',
        'traveling'
    ]
];

$queryString = http_build_query($params);
echo $queryString;
?>
로그인 후 복사

출력은 다음과 같습니다.

name=John&age=25&city=New+York&hobbies%5B0%5D=reading&hobbies%5B1%5D=swimming&hobbies%5B2%5D=traveling
로그인 후 복사

위의 예에서는 $params 배열에 hobbies라는 요소를 추가했습니다. 이 요소의 값은 세 가지 취미를 포함하는 배열입니다. $params 배열을 URL 쿼리 문자열로 변환하기 위해 http_build_query() 함수를 사용하면 hobbies 매개변수가 hobbies=reading&hobbies[1]=swimming&hobbies[2]=traveling 형식으로 변환되는 것을 확인할 수 있습니다.

Objects
마찬가지로 http_build_query() 함수도 객체를 처리할 수 있습니다. 이 함수는 객체의 공개 속성 키-값 쌍을 URL 쿼리 문자열로 자동 변환합니다.

<?php
class Person {
    public $name = 'John';
    public $age = 25;
    public $city = 'New York';
}

$person = new Person();
$queryString = http_build_query($person);
echo $queryString;
?>
로그인 후 복사

출력 결과는 다음과 같습니다.

name=John&age=25&city=New+York
로그인 후 복사
로그인 후 복사

위의 예에서는 Person이라는 클래스를 정의하고 클래스에 이름, 나이, 도시라는 세 가지 공용 속성을 정의했습니다. 그런 다음 Person 객체를 생성하고 이를 http_build_query() 함수에 전달하여 객체의 속성을 URL 쿼리 문자열로 변환했습니다.

특수 문자
매개변수에 특수 문자가 포함된 경우 http_build_query() 함수는 URL 사양을 준수하기 위해 자동으로 특수 문자를 이스케이프 처리합니다.

<?php
$params = [
    'name' => 'John Doe',
    'age' => 25,
    'city' => 'New York'
];

$queryString = http_build_query($params);
echo $queryString;
?>
로그인 후 복사

출력은 다음과 같습니다.

name=John+Doe&age=25&city=New+York
로그인 후 복사

위 예에서 이름 매개변수에는 공백이 포함되어 있습니다. $params 배열을 URL 쿼리 문자열로 변환하기 위해 http_build_query() 함수를 사용할 때 이 함수는 공백을 더하기 기호로 변환합니다.

요약
http_build_query() 함수는 개발자가 연관 배열이나 객체를 URL 쿼리 문자열로 빠르고 쉽게 변환하는 데 도움이 되는 매우 실용적인 PHP 함수입니다. 단순한 매개변수 목록이든 복잡한 다차원 배열이나 객체이든 http_build_query() 함수가 이를 처리할 수 있습니다. http_build_query() 함수를 적절하게 사용함으로써 URL 매개변수를 보다 효율적으로 처리하고 코드의 가독성과 유지 관리성을 향상시킬 수 있습니다.

위 내용은 PHP 함수 소개—http_build_query()`: 빌드 URL 쿼리 문자열의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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