Str::doesntStartWith() и Str::doesntEndWith() — более чистые проверки строк на отрицательные условияИногда в коде необходимо проверить не то, чем начинается или заканчивается строка, а то, чем она не начинается и не заканчивается.
С помощью новейших строковых хелперов Laravel можно обойтись без неудобных отрицаний и писать условия, которые читаются как обычный текст.
🔧 Пример:
use Illuminate\Support\Str;
if (Str::doesntStartWith($username, ['admin_', 'sys_'])) {
// $username НЕ начинается с этих префиксов
}
if (Str::doesntEndWith($filename, ['.tmp', '.bak'])) {
// Имя файла $filename НЕ заканчивается на .tmp или .bak
}
✅ Почему это важно
— Код становится более читабельным (больше нет
!Str::startsWith())— Ясно выражает намерение: проверяется, чем строка не начинается и чем не заканчивается
— Такая же гибкость, как у
startsWith()/endsWith() — принимают как одиночные значения, так и массивы💡 Используйте эти хелперы при проверке исключающих правил: заблокированных префиксов, запрещенных суффиксов или любых негативных условий в логике строк.
📱 @dev_notes_ru
#Laravel #Laravel12