개발 스크랩 메모/PHP
php url 분해
렉사이
2020. 12. 24. 23:57
나는 나의 인터넷 주소에서 나의 제품을 얻고 싶다.
예를 들어:
http://www.website.com/product-category/iphone
iphone 을 찾고 싶습니다.
제 코드에 문제가 없습니다.
하지만 아래에서 목록을 정렬해서 클릭하여 url 을 변경하고 추가합니다.
http://www.website.com/product-category/iphone?orderby=popularity http://www.website.com/product-category/iphone?orderby=new http://www.website.com/product-category/iphone?orderby=price http://www.website.com/product-category/iphone?orderby=price-desc
제가 지금 비밀번호는...
$r = $_SERVER['REQUEST_URI']; $r = explode('/', $r); $r = array_filter($r); $r = array_merge($r, array()); $endofurl = $r[1]; echo $endofurl;
아이폰 파트를 계속 뺏을 수가 있어.
건배!
대답
PHP 의 parse url () 함수를 사용하여 분할url, 그리고 path 인자를 방문하여 끝을 얻을 수 있습니다:
$r = parse_url($url); $endofurl = substr($r['path'], strrpos($r['path'], '/'));
URL 을 분석한 다음 경로에서 마지막으로 찾은 / URL의 "자문자열을 가져오기 시작합니다.
explode ('/') 현재 경로에서 실행할 수 있습니다:
$path = explode($r['path']); $endofurl = $path[count($path) - 1];
업데이트 (strchr () 사용 @x4rf41 지적):substr () + strrpos () 반대로 문자열 결말을 가져오는 짧은 방법은 strchr ():
$endofurl = strrchr($r['path'], '/');
parse u url () 옵션을 사용하면 PHP url pupath 경로를 찾을 수 있습니다$r = url ($url, PHP url 경로 해석
혹은 가장 짧은 방법:
$endofurl = strrchr(parse_url($url, PHP_URL_PATH), '/');