Как извлечь весь текст перед символом '@' в строке - PullRequest
1 голос
/ 08 июня 2011

как удалить строку, начинающуюся с '@'?

, например, admin@admin.com, я хочу удалить строку, начинающуюся с @, чтобы она стала только 'admin'.как в твиттере ... я читал о замене и отделке str, но я думаю, что есть другой способ сделать это?

$email = 'admin@admin.com';

echo substr_replace($email, ?, ?) ; this i cant do

Ответы [ 7 ]

5 голосов
/ 08 июня 2011

Вам не нужно заменять остаток, вы можете просто вырезать до искомый символ. В этом случае это очень просто с strtok :

 $name = strtok($email, "@");
3 голосов
/ 08 июня 2011

strtok() лучший, но как альтернатива ...

$name = strstr($email, '@', TRUE);
3 голосов
/ 08 июня 2011

А как же:

substr($email, 0, strpos($email, '@'));
3 голосов
/ 08 июня 2011

Попробуйте эту функцию: strstr :

$start = strstr($email, '@', true);
2 голосов
/ 08 июня 2011
$email = 'admin@admin.com';
list($Lastpart,$Firstpart) = explode("@",$email); 

echo $Firstpart; //before @ sign
echo $Lastpart;  //after @ sign
1 голос
/ 08 июня 2011
$email = explode("@", $email);

$name = $email[0];
0 голосов
/ 08 июня 2011
$email = 'admin@admin.com';
$aEmail= explode('@',$email);
echo $aEmail[0];
...