Сообщение от
Seregamil
немного извращенный вариант у тебя, или я недопонял
PHP код:
trim(str[], s = ' '){//by Seregamil, хотя это никому не интересно.
for(new j = 0; j!= strlen(str); j++){
if(str[j] == s) strdel(str, j, j+1);
}
return str;
}
Нет никакого смысла возвращать входную строку str, когда она и так передаётся по ссылке и модифицируется функцией strdel. Мало того, будет ещё теряться куча времени на вызов нативных функций strlen и strdel с каждой итерацией.
Так уж и быть, поддержу тему создания своих вариантов...
PHP код:
trim(str[], ch = ' '){
new len;
if(ch == '\0' || (len = strlen(str)),len == 0) return;
new pos1 = 0, pos2 = len;
while(str[pos1] == ch) ++pos1;
while(str[--pos2] == ch) {}
if(pos1 != 0 || pos2 != len)
strmid(str, str, pos1, pos2+1, len);
}