我只是好奇而且困惑,因为我认为Zend Framework在构建Web应用程序时几乎可以使用所有工具。
在Zend Framework中,参数通常在URL中作为/param_name/param_value
传递,但如果我想构建以“?param_name=param_value¶m_name2=param_value2
”结尾的URL,我似乎必须自己构建此查询字符串并将其作为这样的字符串:
<a href="<?php echo $this->url(array('controller'=>'index','action'=>'form'),NULL,TRUE)."?param_name=param_value¶m_name2=param_value2";?>" title="">
Some link
</a>
Zend Framework - 在我看来是非常复杂的 - 有帮助构建这样的查询字符串吗?我搜索了那个并没有找到任何东西。
我正在寻找的是与此类似的东西,但更可靠:
function query_string(array $params) {
$keys = array_keys($params);
$vals = array_values($params);
$build_param_func = create_function('$a,$b','return $a."=".$b;');
$query_string_parts = array_map($build_param_func, $keys, $vals);
return '?'.implode('&', $query_string_parts);
};
在此处查看其演示:http://ideone.com/piCNj
如果Zend Framework没有这样简单的帮助器,是否有任何提供它的模块?或者完全由开发人员来创建这样的函数/帮助器?
感谢您的回答。
答案 0 :(得分:3)
答案 1 :(得分:3)
PHP有一个本机函数,请参阅:http://www.php.net/manual/en/function.http-build-query.php
答案 2 :(得分:2)
如果使用MVC,ZF不会以传统方式使用查询字符串。
你可以创建自己的助手:
http://blog.lysender.com/2009/04/creating-your-own-helper-zend-framework/