>백엔드 개발 >PHP 튜토리얼 >URL을 구문 분석할 때 PHP의 parse_str() 함수와 parse_url() 함수의 차이점

URL을 구문 분석할 때 PHP의 parse_str() 함수와 parse_url() 함수의 차이점

怪我咯
怪我咯원래의
2017-05-27 10:46:202015검색

PHP에서 URL을 파싱하는 함수는 두 가지가 있습니다. 하나는 pars_str() 함수이고, pars_url() 함수는 쿼리 문자열을 변수로 파싱하는 것이고,parse_url 함수는 전체 URL을 파싱하고 반환하는 데 사용됩니다. 부분적으로, 이전

글에서도 이 두 가지 기능을 각각 설명했습니다. 이번 글에서는 주로 URL을 파싱할 때 php par_str() 함수와 parse_url() 함수를 사용하는 방법을 소개합니다.

먼저 PHP parse_str 함수를 살펴보세요

phpparse_str 함수는 쿼리 문자열을 변수로 구문 분석합니다. .

parse_str 함수에는 두 개의 매개변수가 있습니다. 첫 번째 매개변수는 구문 분석이 필요한 쿼리 문자열이며 두 번째 매개변수는 구문 분석된 쿼리 문자열을 수신하는 변수를 설정하는 데 사용됩니다. . 다음 예를 참조하세요.

여기서 pars_url을 사용하여 URL의 쿼리 문자열을 가져옵니다. pars_url 함수는 아래에 설명되어 있습니다.

<?php
$url_name=&#39;http://www.php.cn/mytest.php?uid=5&pages=2&category=3&#39;;
$urlarr=parse_url($url_name);

//指定第二个参数
parse_str($urlarr[&#39;query&#39;],$parr);//$urlarr[&#39;query&#39;]的值为:uid=5&pages=2&category=3&#39;
print_r($parr);
echo "<br/><br/>";

//不指定第二个参数
parse_str($urlarr[&#39;query&#39;]);
echo $uid."<br/>";
echo $pages."<br/>";
echo $category."<br/>";

?>

코드 실행 결과:

URL을 구문 분석할 때 PHP의 parse_str() 함수와 parse_url() 함수의 차이점

파싱된 값을 얻는 방법은 두 번째 매개변수를 설정하거나 두 번째 매개변수를 설정하지 않는 것으로 알 수 있다. 매개변수가 다릅니다.

두 번째 매개변수를 설정하면 구문 분석된 쿼리 문자열을 배열 형식으로 직접 출력할 수 있습니다.

두 번째 매개변수는 설정되지 않았으며, 쿼리 문자열의 매개변수 이름을 변수 이름으로 사용해야 값을 얻을 수 있습니다.

php parse_url

phpparse_url 함수는 URL을 구문 분석하고 URL에 나타나는 다양한 구성 요소가 포함된 연관 배열을 반환합니다.

이 기능은 주어진 URL의 유효성을 확인하는 데 사용되지 않고 아래 나열된 부분으로 분류하는 데 사용됩니다. 불완전한 URL도 허용되며,parse_url()은 이를 가능한 한 정확하게 구문 분석하려고 시도합니다.

다음 예를 참조하세요.

<?
$test = parse_url("http://www.php.cn/index.php?name=tank&sex=1#top");
print_r($test);
?>

코드 실행 결과:

URL을 구문 분석할 때 PHP의 parse_str() 함수와 parse_url() 함수의 차이점

이 기능을 다음과 같이 사용할 수도 있습니다.

<?php
header("content-type:text/html;charset=utf-8");
$url ="http://www.php.cn/index.php?name=tank&sex=1#top";
echo "scheme:".parse_url($url,PHP_URL_SCHEME)."<br/>";
echo "host:".parse_url($url,PHP_URL_HOST)."<br/>";
echo "path:".parse_url($url,PHP_URL_PATH)."<br/>";
echo "query:".parse_url($url,PHP_URL_QUERY)."<br/>";
echo "fragment:".parse_url($url,PHP_URL_FRAGMENT)."<br/>";
?>

코드 실행 결과:

URL을 구문 분석할 때 PHP의 parse_str() 함수와 parse_url() 함수의 차이점

[관련 기사 추천]:

1.php에 대한 자세한 설명 pars_url() 함수 정의 및 사용법

2.php pars_str() 함수 설명

위 내용은 URL을 구문 분석할 때 PHP의 parse_str() 함수와 parse_url() 함수의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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