Запретить php автоматически кодировать '@' в '-'Php

Кемеровские программисты php общаются здесь
Anonymous
Запретить php автоматически кодировать '@' в '-'

Сообщение Anonymous »

У меня есть этот код, использующий адреса электронной почты:

Код: Выделить всё

$a = "b@b.com";
$b = 'b%40b.com';
$c = urldecode($b);

echo ($a . ' ' . $c);
В браузере обе переменные отображаются правильно: b@b.com
Но если я использую $a или $c на сервере в качестве имени пользователя для чтения учетной записи пользователя, я получаю ошибки, поскольку их значения: b—b.com.
Если я использую отладчик для проверки значения $a сразу после первой строки кода, он покажет, что $a уже имеет значение b—b.com. Поэтому нет никаких дополнительных шагов, которые могли бы его закодировать.
Обратите внимание, что — — это не HTML-код знака @, а код для черточка ().
Я попробовал str_replace(), но он не работает.
PHP версии 5.3.8< /п>

Подробнее здесь: https://stackoverflow.com/questions/278 ... ncoding-to

Вернуться в «Php»