Задать вопрос

Как проверить что в строке нет символов кроме пробелов?

if( $string == '' || $string == '    ')
{
exit();
}


нужно условие проверяющее есть ли в строке полезные символы которые используются для именования файлов
exit() если в строке нет символов или есть только несколько пробелов
  • Вопрос задан
  • 475 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
exit() если в строке нет символов или есть только несколько пробелов
if (preg_match('/^$|^[\s]+$/usim',$string)) exit();

или проще:
if (strlen(trim($string))===0) exit();

Если проверка по логину:
if (!$_SESSION['login']) exit();
А $_SESSION['login'] создаём только после успешной авторизации.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@ar2rsoft
PHP-developer
if (!empty(trim($string))) {
exit();
}
Ответ написан
FanatPHP
@FanatPHP
Чебуратор тега РНР
Вообще, конечно, trim() не соответствует буквально поставленной задаче, но скорее всего соответствует невысказанным желаниям автора, которому не нужны и символы перевода строк.

А вот нестрогая проверка вообще ничему не отвечает. Не давая ввести вполне себе не пробельный символ 0.

Так что корректный вариант (для всех пробельных символов), пожалуй, будет таким
if (!strlen(trim($string))) {
    die;
}

а буквальный (только пробелы) таким
if (!strlen(str_replace(" ", "", $string))) {
    die;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы