Это устаревшее преобразование
Возможный дубликат:
Преобразование выражений ereg в preg
Мне нужно преобразовать использование ereg здесь во что-то более актуальное (поскольку ereg устарела).
Вот функция, от которой в данный момент зависит мой код:
function ValidEmail($address)
{
if( ereg( ".*<(.+)>", $address, $regs ) ) {
$address = $regs[1];
}
if(ereg( "^[^@ ]+@([a-zA-Z0-9\-]+\.)+([a-zA-Z0-9\-]{2}|net|com|gov|mil|org|edu|int)\$",$address) )
return true;
else
return false;
}
Поскольку я не использую регулярные выражения, может ли кто-нибудь помочь мне преобразовать функцию во что-то, что функционирует точно так же, но не использует устаревшую функцию? Благодарю.
1 ответ
Похоже, все, что мне нужно было добавить, это переключить ereg на preg_match и добавить символ-разделитель для каждого шаблона:
function ValidEmail($address)
{
if( preg_match( "/.*<(.+)>/", $address, $regs ) ) {
$address = $regs[1];
}
if(preg_match( "/^[^@ ]+@([a-zA-Z0-9\-]+\.)+([a-zA-Z0-9\-]{2}|net|com|gov|mil|org|edu|int)\$/",$address) )
return true;
else
return false;
}