如何在使用PHP的另一个字符串中添加字符串值?

问题描述:

我有一个显示某些电子邮件的自动化系统。为了防止垃圾邮件机器人拿起电子邮件,我想制作一个php脚本,在电子邮件的'@'符号之前自动添加'[REMOVE THIS]'字符串。如何在使用PHP的另一个字符串中添加字符串值?

substr_replace()和strpos()不起作用,因为substr_replace要求替换字符串的长度与原始字符串的长度相同,并且strpos()一次只能替换一个字母/符号。我需要能够添加一个全新的字符串'[REMOVE THIS]',而不是从原始字符串中删除任何内容。

我该怎么做?

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

+0

对于像这样的`str_replace`这样简单的替换就足够了。 – Michael 2010-11-27 06:15:48

像这样简单:

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

并再次返回:

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

换句话说,[email protected]变得名称[REMOTE这] @site .com?

<?php 
$email = "[email protected]"; 
echo str_replace("@", "[REMOVE THIS]@", $email); 
?> 

或者,你可以使用:

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

输入你的电子邮件,获得编码版本,把它放在你的网站,它会显示你的正确电子邮件和机器人将无法抓住它,因为它只是代码,虽然它回应了真正的结果。但是当机器人通过代码搜索时,他们只会看到代码。