str_replace не удаляет пробелы - PullRequest
0 голосов
/ 01 февраля 2012

Я пытаюсь изменить любое '' на '-'

я делаю так:

 $tagname = $taginfo[1];   /* something like $tagname = 'A tag with spaces' */
 $tagurl = urlencode($tagname);
 $tagsize = 9 + intval($numtags)*2;
 $bla = 'function("'.str_replace(' ','-',$tagname).'")';

$ bla будет использоваться для присоединения к атрибуту onclick

любая идея, почему результат будет

onclick="function('A tag with spaces')"

вместо

onclick="function('A-tag-with-spaces')" 

? могут ли htmlspecialchars что-то с этим сделать?

1 Ответ

2 голосов
/ 01 февраля 2012

urlencode($tagname); превратит ваши пробелы в %20, поэтому ваша строка будет

A%20tag%20with%20spaces

. Вы можете либо заменить %20 на -, либо выполнить замену до кодирования.

...