Emeron
Новичок
Вообщем, я не могу разобраться в странном поведении данной проверки имени юзера. Может, я плохо соображаю, но прошу помочь мне. Сам код:
Вывел он следующее(что меня и поразило):
PHP:
function checkName( $nick )
{
$return = "Значение: {$nick}\n";
if( !preg_match( "/^[A-Z|a-z|А-Я|а-я|0-9|_]+$/", $nick ) )
$return .= "First: Неверное входящее значение\n";
else
$return .= "First: OK\n";
if( !preg_match( "/^[A-Za-zА-Яа-я0-9_]+$/", $nick ) )
$return .= "Second: Неверное входящее значение";
else
$return .= "Second: OK";
return $return;
}
echo "Данная непонятка на PHP: ".phpversion()."\n\n";
echo checkName( 'А' )."\n\n";
echo checkName( 'Ад' )."\n\n";
echo checkName( 'Адми' )."\n\n";
echo checkName( 'Админи' )."\n\n";
echo checkName( 'Админист' )."\n\n";
echo checkName( 'Администратор' )."\n\n";
Вообщем, кому не сложно, помогите мне) Заранее, всем, кто просмотрел данный топик, спасибо.Данная непонятка на PHP: 5.2.6
Значение: А
First: OK
Second: OK
Значение: Ад
First: OK
Second: OK
Значение: Адми
First: OK
Second: OK
Значение: Админи
First: OK
Second: OK
Значение: Админист
First: Неверное входящее значение
Second: Неверное входящее значение
Значение: Администратор
First: Неверное входящее значение
Second: Неверное входящее значение