У zf2 есть псевдоним для urlencode?

Есть ли у zf2 псевдоним для urlencode?

В zf2, если я хочу сделать rawurlencode, Я использую:

$escaper = new Zend\Escaper\Escaper();
echo $escaper->escapeUrl('hello world');

Какие выводы:

hello%20world

Тем не менее, как бы я позвонил urlencode? Желаемый результат:

hello+world

Если краткий ответ, что мне просто нужно позвонить urlencode напрямую, тогда так тому и быть.

3

Решение

Краткий ответ — нет. Родной rawurlencode() Функция производит вывод в соответствии с RFC 3986 тем не мение urlencode() не является. Это основная мотивация использования rawurlencode в escapeUrl() метод. Я думаю, у вас есть два варианта в этом случае;

A. Вы можете попробовать расширить собственный Escaper и переопределить метод escapeUrl ():

namespace My\Escaper;

use Zend\Escaper\Escaper as BaseEscaper;

class Escaper extends BaseEscaper
{
/**
* {@inheritDoc}
*/
public function escapeUrl($string)
{
return urlencode($string);
}
}

B. Вы можете просто использовать urlencode() как сказано в комментариях @ cheery, это нативная функция. (Лично я думаю, что это самое простое решение)

ОБНОВИТЬ:

Вы также можете захотеть прочитайте этот ответ о разнице между urlencode и rawurlencode в глубине.

1

Другие решения

Других решений пока нет …