parse_url () 및 parse_str () 사용 .
(정규식은 거의 무엇이든 사용할 수 있지만 오류를 만드는 것은 매우 쉽습니다. 따라서 달성하려는 PHP 함수가 있으면 사용하십시오.)
parse_url은 문자열을 가져 와서 정보가 많은 배열로 잘라냅니다. 이 배열을 사용하거나 원하는 하나의 항목을 두 번째 인수로 지정할 수 있습니다. 이 경우 쿼리에 관심이 있습니다.PHP_URL_QUERY
있습니다.
이제 쿼리가 v=C4kxS1ksqtw&feature=relate
있지만, 이후의 부분 만 원합니다 v=
. 이를 위해 parse_str
기본적으로 GET
문자열 과 같이 작동 합니다. 문자열을 가져와 문자열에 지정된 변수를 만듭니다. 이 경우, $v
및 $feature
생성된다. 에 관심이 $v
있습니다.
안전 parse_url
을 위해 네임 스페이스에 있는 모든 변수를 저장하고 싶지는 않습니다 (멜로우 순 주석 참조). 대신 변수를 배열의 요소로 저장하여 저장하는 변수를 제어 할 수 있으며 실수로 기존 변수를 덮어 쓸 수 없습니다.
모든 것을 종합하면 다음과 같은 이점이 있습니다.
<?php
$url = "http://www.youtube.com/watch?v=C4kxS1ksqtw&feature=relate";
parse_str( parse_url( $url, PHP_URL_QUERY ), $my_array_of_vars );
echo $my_array_of_vars['v'];
// Output: C4kxS1ksqtw
?>
작업 예
편집하다:
hehe-감사합니다 Charles. 그것은 나를 웃게했다. 나는 전에 Zawinski 인용을 본 적이 없다.
Some people, when confronted with a problem, think ‘I know, I’ll use regular expressions.’ Now they have two problems.
– 제이미 자윈 스키