在我的应用程序的某个时刻,用户被发送到此URL:
https://mysite.com/bframe/auth?next=/bframe?foo=bar&foo2=bar2
如您所见,URL中的 next 参数实际上包含一个新的url查询,其中 foo 和 foo2 作为参数。要使用:
解析Zend2 im中的下一个参数$next = $this->getController()->getRequest()->getQuery('next', null);
但这让我回到第一个参数/bframe?foo=bar
修剪& foo2 = bar2 ,这有点意义,因为 getQuery 将第一个问号视为查询?我不太清楚,问题是,如何检索 next 的完整价值?
答案 0 :(得分:1)
urlencode()
您的“下一个”内容
$url = 'https://mysite.com/bframe/auth?next=' . urlencode('/bframe?foo=bar&foo2=bar2');
您的网址应如下所示:
https://mysite.com/bframe/auth?next=%2Fbframe%3Ffoo%3Dbar%26foo2%3Dbar2
您会注意到不再有任何含糊不清的?
和&
字符
由于我不确定您在代码中如何使用$next
,因此概念是将您计划插入的任何数据的url编码到另一个url查询字符串结构中