Как добавить строковые значения в середине другой строки, используя PHP? - PullRequest
1 голос
/ 27 ноября 2010

У меня есть автоматизированная система отображения определенных электронных писем. Чтобы спам-боты не забирали электронные письма, я хотел бы создать php-скрипт, который автоматически добавляет строку «[REMOVE THIS]» прямо перед знаком «@» в электронном письме.

substr_replace () и strpos () не работают, потому что substr_replace требует, чтобы замещающая строка имела ту же длину, что и исходный фрагмент строки, а strpos () может заменять только одну букву / символ за раз. Мне нужно иметь возможность добавить новый фрагмент строки «[REMOVE THIS]», не удаляя при этом ничего из исходной строки.

Как мне это сделать?

Ответы [ 3 ]

1 голос
/ 27 ноября 2010

Другими словами, name@site.com становится именем [REMOTE THIS] @ site.com?

<?php
$email = "name@site.com";
echo str_replace("@", "[REMOVE THIS]@", $email);
?>

Или вы можете использовать:

http://www.wbwip.com/wbw/emailencoder.html

Введите свой адрес электронной почты, получите зашифрованную версию, поместите ее на свой сайт, и он отобразит ваш адрес электронной почты, и боты не смогут его получить, так как это всего лишь код, хотя он повторяет реальный результат ... но когда боты ищут код, все, что они увидят, это код.

0 голосов
/ 27 ноября 2010

Так просто, как это:

$obfuscated_email = str_replace('@', '[REMOVE THIS]@', $real_email);

и обратно:

$real_email = str_replace('[REMOVE THIS]', '', $obfuscated_email);
0 голосов
/ 27 ноября 2010

preg_replace () preg_replace("/\@/", "[REMOVE THIS]@", $emailaddress)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...