Несколько моих любимых вещей:
Добавленный в sp2 - Сценариях опций под инструментами/опциями/сценариями
Новая безопасность с помощью схем - создают две схемы: user_access, admin_access. Поместите своего пользователя procs в одного и Вашего администратора procs в другом как это: user_access.showList, admin_access.deleteUser. Предоставление ВЫПОЛНЯЕТ на схеме к Вашему пользователю приложения / роль. Больше ПРЕДОСТАВЛЕНИЯ НЕ ВЫПОЛНЯЕТСЯ все время.
использование Шифрования, созданное в функциях шифрования, представления (для дешифрования для представления), и базовые таблицы с триггерами (для шифрования на вставляют/обновляют).
Для этого вам не нужны регулярные выражения, просто используйте:
if ( Trim ( $str ) === '' ) echo 'empty string';
Проверка длины обрезанной строки или сравнение обрезанной строки с пустой строкой, вероятно, является самым быстрым и легким для чтения, но в некоторых случаях вы не может использовать это (например, при использовании фреймворка для проверки, который принимает только регулярное выражение).
Поскольку никто еще не опубликовал рабочее регулярное выражение ...
if (preg_match('/\S/', $text)) {
// string has non-whitespace
}
или
if (preg_match('/^\s*$/', $text)) {
// string is empty or has only whitespace
}
if (preg_match('^[\s]*$', $text)) {
//empty
}
else {
//has stuff
}
, но вы также можете выполнить
if ( trim($text) === '' ) {
//empty
}
Edit : обновлено регулярное выражение для соответствия действительно пустой строке - по нику (спасибо!)
if(preg_match('^[\s]*[\s]*$', $text)) {
echo 'Empty or full of whitespaces';
}
^ [\ s] * означает, что текст должен начинаться с нуля или больше пробелов и [\ s] * $ означает, что они должны заканчиваться нулем или более пробелов, так как выражения "ноль или более", они также соответствуют пустым строкам.
Вам действительно не нужно регулярное выражение
if($str == '') { /* empty string */ }
elseif(trim($str) == '') { /* string of whitespace */ }
else { /* string of non-whitespace */ }