Skip to content
This repository was archived by the owner on Jan 31, 2020. It is now read-only.

URL helper plugins can't manage "+" characterΒ #82

@tasmaniski

Description

@tasmaniski

The bug is related to zendframework/zendframework#4678 and it's still present.
The problem is that url() helper doesn't translate sign + to %2B

When I try to generate URL in a view:

$data = ['id' => 102, 'slug' => 'sport+', 'category' => 'basketball']; 
echo $this->url('post', $data);

Url helper return /basketball/102/sport+.html but it should be /basketball/102/sport%2B.html
since rawurlencode() translate sign + to %2B

From my investigate, the methods that are called:

Zend\View\Helper\Url::__invoke
    Zend\Mvc\Router\Http\TreeRouteStack::assemble
        Zend\Mvc\Router\Http\Segment::assemble
            Zend\Mvc\Router\Http\Segment::buildPath
                Zend\Mvc\Router\Http\Segment::encode 

soure: encode() method translate back %2B to +

Not sure if the bug is part of zend-view or zend-mvc.
Versions I am using zend-view (2.8.1) and zend-mvc (2.7.10).

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions