【问题标题】:How do I encode a query string containing forward slashes?如何编码包含正斜杠的查询字符串?
【发布时间】:2011-10-10 06:30:20
【问题描述】:
我需要将路径作为参数传递给 url,例如
/Controller/Action/My-Path 但 My-Path 包含正斜杠,例如/dir1/dir2/file.php
有没有办法将此路径作为单个参数传递,或者我需要将路径分解为/Controller/Action/Param1/dir1/Param2/dir2/Param3/file.php。一些示例代码将不胜感激
TIA 以法莲
【问题讨论】:
标签:
php
zend-framework
url
【解决方案1】:
你可以使用 url view helper,例如:
echo $this->view->url(
array(
'controller' => 'somecontroller',
'action' => 'someaction',
'path'=>'/dir1/dir2/file.php')
);
这将导致:
public/somecontroller/someaction/path/%2Fdir1%2Fdir2%2Ffile.php
url view helper 自动使用 url_encode 对您的参数进行编码(请参阅其他 anwser)。
【解决方案2】:
【讨论】:
-
嵌入 link 你会得到 ../path//dir1/dir2/file .php