PHP проверяет, не пусто ли поле ввода и есть ли в нем специальные символы

Я хочу проверить, не пусто ли поле ввода и есть ли у него специальные символы. Я пробовал это:

function stringValidator($field) {   

    if (!empty($field) && (!filter_var($field, FILTER_SANITIZE_STRING)))
    {

            return "You typed $field: please don't use special characters 
            '<' '>' '_' '/' etc.";

    } }

PHP даже не пытался это проверить. Какие-нибудь советы?

FILTER_SANITIZE_STRING работает иначе (хотя, честно говоря, он плохо документирован).
Jeto 05.11.2018 00:26
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
1
346
1

Ответы 1

Звонок preg_match() будет работать нормально.

Код: (Демо)

function stringValidator($field) {   
    if (!empty($field) && preg_match('~[^a-z\d]~i', $field)) {
            return "You typed $field: please don't use special characters '<' '>' '_' '/' etc.";
    }
    return "valid";  // empty or valid
}

$strings = ["hello", "what_the"];
foreach ($strings as $string) {
    echo "$string: " , stringValidator($string) , "\n";
}

Выход:

hello: valid
what_the: You typed what_the: please don't use special characters 
            '<' '>' '_' '/' etc.

Или звонок ctype_:

Код: (Демо)

function stringValidator($field) {   
    if (!empty($field) && !ctype_alnum($field)) {
            return "You typed $field: please use only alphanumeric characters";
    }
    return "valid";  // empty or valid
}

$strings = ["hello", "what_the"];
foreach ($strings as $string) {
    echo "$string: " , stringValidator($string) , "\n";
}

Выход:

hello: valid
what_the: You typed what_the: please use only alphanumeric characters

@PhilipeDeSouzaSantos Решил ли я вашу проблему? Есть какие-нибудь отзывы для меня?

mickmackusa 05.11.2018 22:39

Другие вопросы по теме