- 1
- 2
//Функция some_function возвращает данные в формате var1=val1&var2=val2
parse_str(some_function());
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+146
//Функция some_function возвращает данные в формате var1=val1&var2=val2
parse_str(some_function());
Мой код примерно полуторагодовой давности.
Разбирал старые проекты встретил и подумал - говно или имеет право на жизнь?
Классическое
//Функция some_function возвращает данные в формате val1:val2
list ($var1, $var2) = explode(':', some_function())
ведь будет работать медленнее, не так ли? :)
У похапистов вообще на тему скорости с головой непорядок - любой идиотский алгоритм они выдают за оптимизацию по скорости.
2)Нужно делать оптимизацию, только при наличии весомых оснований, если это требует каких-то затрат, по сравнению с более простым способом.
Как будто explode не создает массив, предварительно изнасиловав строку с данными. Оптимизация, да.
какая запись понятнее,
$pair[0], $pair[1], или $key,$value? внимание, вопрос:
Вы наверное вместо $x=expr... всегда пишете parse_str("x=".urlencode(expr...))?
Мне вообще массив не нужен, поэтому функция возвращает строку, которая парсится parse_str.
Это намного быстрее, чем explode и занимает меньше памяти, чем массив.
Вот не пойму, что вам мешает прямо в функции присвоить результат данным глобальным переменным? Большей части недостатков избежали бы, с так волнующими вас скоростью и памятью тоже было бы лучше.
Функция возвращает строго определенные значения, в которых не может быть знака равно и амперсанда.
>что вам мешает прямо в функции присвоить результат данным глобальным переменным?
>глобальным переменным?
Ой, мама.