본문 바로가기

PHP/PHP Programming

[PHP] URL의 GET 변수값 삭제하기

반응형

■ URL의 GET 변수값 삭제하기



 작업진행중 GET 변수값이 중복으로 선언되어 들어가는 상황이 발생하여 아래와 같은 함수를 사용하여 해결하였다.

 아래 방식으로 GET 변수의 값을 제거할 수 있다.



 delete_get.php

<?php
    function del_get($url,$key) {

        if (strpos($url, '?') === false) {
           
            return $url;
        }

        list($url,$query) = explode('?', $url);
        $temp = explode('&', $query);
       
        foreach($temp as $k => $v) {

            if(substr($v, 0, strlen($key) + 1) == $key.'=') {
               
                unset($temp[$k]);
            }

            return $url.'?'.implode('&',$temp);
        }
    }

    $url = 'https://www.google.co.kr/search?q=%EC%82%AC%EC%95%85%EB%AF%B8%EC%86%8C';
    echo "원본 URL : ";
    echo $url.'<br/>'."\n";

    $url = del_get($url,'q');    // url 제거
                                        // q=%EC%82%AC%EC%95%85%EB%AF%B8%EC%86%8C 분이 전체 삭제된다.

    echo "GET값 제거 URL : ";
    echo $url.'<br/>'."\n";
?>

 출력결과


반응형