특정 단어 뒤의 값을 추출하는 문제입니다.

특정 단어 뒤의 값을 추출하는 문제입니다.

QA

특정 단어 뒤의 값을 추출하는 문제입니다.

본문

 안녕하세요. 
 
현재 wr_3 에 아래와 같은 값이 들어가 있습니다.

http://naver.com/cafe/?a_code=AAABBBCCC&n_query=%EC%A4%84%EA%B8%B0%EC%84%B8%ED%8F%AC%EA%B0%80%EC%8A%B4%EC%84%B1%ED%98%95%EB%B9%84%EC%9A%A9&DMSKW=%EC%A4%84%EA%B8%B0%EC%84%B8%ED%8F%AC%EA%B0%80%EC%8A%B4%EC%84%B1%ED%98%95%EB%B9%8


위 값중에 a_code= 뒤에 있는 AAABBBCCC 값만 추출해서 보여주고 싶습니다.

이런 질문을 해서 아래와 같은 답변을 얻었습니다.


 

$d = $list[$i]['wr_3'];
$p = "#a_code=(.+?)";
preg_match($p, $d, $m);
echo $m[1];

 

위처럼 하니 AAABBBCCC 가 잘 추출 되어 나오는데 
문제가 한가지 있습니다.

wr_3에 
http://naver.com/cafe/?a_code=AAABBBCCC
위처럼 &로 시작하는 다른 값이 없을 때는 AAABBBCCC를 가지고 오지 못합니다.


AAABBBCCC 뒤에 &가 없어도 AAABBBCCC 를 가지고 오게 하려면 
$p = "#a_code=(.+?)"; 
이 부분을 어떻게 수정해야 할까요?

이 질문에 댓글 쓰기 :

답변 3

https://m.blog.naver.com/PostView.nhn?blogId=tollu09&logNo=220914266833&proxyReferer=https%3A%2F%2Fwww.google.com%2F
해당 블로그 내용 참조해보세요

function getUrlParameter($url, $sch_tag) {
            $parts = parse_url($url);
            parse_str($parts['query'], $query);
            return $query[$sch_tag];
      }

    $my_url = $list[$i][wr_3];
    echo getUrlParamter($my_url, 'a_code');

말씀하신 블로그를 참고하여 위처럼 작성해보았지만

Fatal error: Call to undefined function getUrlParamter()

이라고만 나옵니다 ㅠ_ㅠ


$str = "http://naver.com/cafe/?a_code=AAABBBCCC&n_query=%EC%A4%84%EA%B8%B0%EC%84%B8%ED%8F%AC%EA%B0%80%EC%8A%B4%EC%84%B1%ED%98%95%EB%B9%84%EC%9A%A9&DMSKW=%EC%A4%84%EA%B8%B0%EC%84%B8%ED%8F%AC%EA%B0%80%EC%8A%B4%EC%84%B1%ED%98%95%EB%B9%8";
$url = parse_url($str);
parse_str($url['query'], $query);
echo $query['a_code'];
답변을 작성하시기 전에 로그인 해주세요.
전체 18
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT