Есть ли в Zend Framework помощник для создания строк URL-запросов?
Мне просто любопытно и растерянно, потому что я рассматривал Zend Framework как инструмент для создания практически всего, что вам может понадобиться при создании веб-приложения.
В Zend Framework параметры обычно передаются в URL как /param_name/param_value
, но если я хочу создать URL, заканчивающийся на "?param_name=param_value¶m_name2=param_value2
"Кажется, я должен сам построить эту строку запроса и передать ее в виде строки:
<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 нет такого простого помощника, есть ли модуль, который его предоставляет? Или это полностью зависит от разработчика, чтобы создать такую функцию / помощник?
Спасибо за ваши ответы.
3 ответа
PHP имеет встроенную функцию для этого, см.: http://www.php.net/manual/en/function.http-build-query.php
Если вы используете MVC, ZF не использует строки запроса традиционным способом.
Вы можете создать свой собственный помощник, хотя:
http://blog.lysender.com/2009/04/creating-your-own-helper-zend-framework/