Есть ли в Zend Framework помощник для создания строк URL-запросов? - PullRequest
2 голосов
/ 30 декабря 2011

Я просто любопытен и смущен, потому что я считал, что Zend Framework имеет инструменты практически для всего, что вам может понадобиться при создании веб-приложения.

В Zend Framework параметры обычно передаются в URL как /param_name/param_value, но если я хочу создать URL-адрес, заканчивающийся на "?param_name=param_value&param_name2=param_value2", мне кажется, что мне нужно создать эту строку запроса самостоятельно и передать ее в виде строки:

<a href="<?php echo $this->url(array('controller'=>'index','action'=>'form'),NULL,TRUE)."?param_name=param_value&param_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('&amp;', $query_string_parts);
};

См. Его демонстрацию здесь: http://ideone.com/piCNj

Если в Zend Framework нет такого простого помощника, есть ли какой-нибудь модуль, который его предоставляет?Или это полностью зависит от разработчика, чтобы создать такую ​​функцию / помощник?

Спасибо за ваши ответы.

Ответы [ 3 ]

3 голосов
/ 30 декабря 2011

PHP имеет встроенную функцию для этого, см .: http://www.php.net/manual/en/function.http-build-query.php

3 голосов
/ 30 декабря 2011

Использовать http_build_query

2 голосов
/ 30 декабря 2011

Если вы используете MVC, ZF не использует строки запроса традиционным способом.

Вы можете создать свой собственный помощник, хотя:

http://blog.lysender.com/2009/04/creating-your-own-helper-zend-framework/

...