Вы делаете операторы неправильно <= 30
, который меньше или равен 30, то есть все, что меньше, чем 31, вы должны использовать.
, чтобы исправить вашу ошибку, вы должны использовать оператор >
чтобы показать, что левый аргумент должен быть больше, чем правый аргумент.
Если вы внимательно посмотрите на конструкцию символа, вы увидите, что левая сторона >
открыта больше, чем правая сторона,(наоборот)
Следующие ссылки будут описывать различия:
вы также заметите, что в вашем операторе if есть восклицательный знак, который заставляет php преобразовать результат в bool до фактического запуска проверки длины.
поэтому вы всегда будете пытаться оценить true <= 30
, вы должны удалить восклицательный знак.
Попробуйте переписать ваш код так:
if(mb_strlen($string, 'utf-8') > 30)
{
array_push($array, "value")
}