내 첫 번째 URL 매개 변수에만 액세스 할 수 있습니다. 내 RewriteRule과 QUERY_STRING에 모두 앰퍼샌드가 있기 때문에 생각합니다. PHP 스크립트에서 각 매개 변수에 올바르게 액세스하려면 어떻게합니까?QUERY_STRING은 첫 번째 매개 변수 만 표시합니다.
내가 다음 줄이 내 htaccess로 파일에서
http://example.com/subdir/api/transport/1/car?type=fast&color=blue"
에 요청하고있다 : json_encode($_GET)
를 표시, 내 PHP에서
RewriteRule ^(.+)$ index.php?q=%{REQUEST_URI}¶ms=%{QUERY_STRING}&api=$1 [L]
는 생산 :
{"q":"\/subdir\/api\/transport\/1\/car","params":"type=fast","color":"blue","api":"transport\/1\/car"}
"color": "blue"는 더 이상 등호가없고 "pa"안에 포함되지 않습니다. 숫양 ".
I 따라서`json_enocde 표시하는 경우
($ _ GET [ '의 PARAMS는']) 내가 얻을 모두는 다음과 같다 :"type=fast"
I 매개 변수의 전체 세트를 획득하기 위해 무엇을 할 수 있는가? .htaccess 또는 PHP 파일에 문제가 있습니까?
귀하의 규칙을 변경해야합니다 :로
당신은 당신의 규칙을 사용할 수있는'한다 RewriteRule^(+.) $ index.php를 Q = % {REQUEST_URI} API = $ 1 [L, QSA]? ' – anubhava
@anubhava 감사합니다. 덕분에 많은 도움이되었습니다. 처음에는 쉼표 뒤에 공백이 생기는 경우가 있었지만 공간이 없으면 완벽하게 작동합니다. 동의 할 답변을 게시 하시겠습니까? – kojow7