2016-06-13 2 views
0

데이터에 아래의 URL이 포함 된 쿼리가 있습니다. 어떻게 coldfusion을 사용하여 URL에서 Id 값을 추출 할 수 있습니까? coldfusion을 사용하여 스트립 URL 매개 변수

http://127.0.0.1/entity/abc.cfm?title=first-page-review&id=476 

<cfif findNoCase('/entity/', qry.URL)> 
    <cfset Param2 = ListGetAt(qry.URL,2,"&")> 
    <cfoutput>#param2#</cfoutput> 

이 같은 출력을주고있다 -> 'ID = 476',하지만 난 출력으로 만 숫자 ID가 필요합니다. 나는 id를 얻기 위해 처음 3 개의 문자를 제거 할 수 있지만 그것을하기위한 더 좋은 방법이있다. 감사

+0

출력하기, 왜 = 대신에 목록 구분 기호를 변경하지 & amp; – luke

답변

0

이 URL 변수가 항상 일치합니다 제공 :

<cfset IDvar1 = "http://127.0.0.1/entity/abc.cfm?title=first-page-review&id=476"> 

<cfset IDvar2 = ListLast(IDvar1,"=") /> 

IDvar2 수익률 476 ID가 마지막으로 = 후 항상 경우

+0

사실이지만 위치에 의존하면 코드가 부서져 버립니다. 조금 더 많은 작업이지만 모든 매개 변수를 구조체로 파싱 (위 링크 에서처럼)하여 이름으로 액세스 할 수 있으므로 유연성이 훨씬 향상됩니다. – Leigh

+0

@Leigh 나는 완전히 동의하지만 기업 세계에서는 완벽주의가 거의 보상받지 못한다. CF를 사용하는 대부분의 사람들은 중소기업이나 정부 기관에서 일하고 있습니다. 나는 보통 거꾸로하는 관행이 풍부하다고 생각하고 질문 한 질문에 답합니다. – TRose

+0

예, 들었습니다. 그러나 질문자의 배경과 제한 사항을 알 수없는 경우, 함정 또는 기타 옵션을 알지 못해 질문을 제기했다고 생각하는 경향이 있습니다. 이 특정한 경우, 쉽게 깨질 수있는 것을 피하는 것보다 완벽에 대해서는 덜합니다. params가 항상 같은 순서로 있지 않을 가능성이 높기 때문에 실수로 문제를 일으킬 수있는 논리 버그가 쉽게 발생합니다. 작업 예제가 이미 작성되었으므로이를 사용하고 몇 가지 두통을 줄일 수 있습니다. :) – Leigh