title: Plus "+" symbol in href in WebDAV protocol
body: <p>I have a PHP script to work with webdav server. To load a folder contents I use <code>PROPFIND</code> webdav request. It returns XML. From the XML I extract folders/files list and for every item I need to get name. To have this I get href option, then do urldecode and then basename.</p>
  
  <p>This works fine except one case. If a folder/file on the webdav server has <code>+</code> in the name then this plus is not encoded in the href option. And urldecode decodes it as space. So finally I get a folder with space in place of plus.</p>
  
  <p>For example, on the webdav server I have the folder <code>"folder with space and+"</code>.
  Href will be <code>"/folder%20with%20space%20and+/"</code>. And after urldecode it will be <code>"folder with space and "</code>.</p>
  
  <p>I can fix this with <code>str_replace('+','%2B',$href)</code> before urldecode. But my script works with many webdav servers. And i am not sure all webdav servers works with same way.</p>
  
  <p>Do you know if this is standard thing that webdav servers don't encode <code>+</code> symbol? Or this depends on the server software ?
  What is most correct way to solve such problem?
  Thanks.</p>