Был уверен что напечатается 4 раза последний элемент массива. Но после того как увидел правильный ответ, первая мысль — точно, это же for! Не знаю теперь кто я с точки зрения Amazon или Microsoft… for ведь такой же как в большинстве Си-подобных языков. Это не знание основ javascript или же не знание основ Си?)
У меня сейчас один из проектов похож по описанию на ваш) Но после получения десятка новых задач по нему я понял что это практически невыполнимо. Хоть и сайт довольно простой по функционалу. Но это не сопоставимо с усилиями, которые надо было прилагать чтобы въехать в код и придумать решение на том же уровне. Но мне удалось убедить заказчика что нужно отрефакторить сайт весь.
Вот что получилось — https://gist.github.com/pldin601/a441ffacaeec6c43e0ff3830c12bab77
Чтобы прочитать и понять Ваш код мне пришлось сделать его более линейным. Из того, что я понял за 30 минут, могу сказать, что в Вашем коде делаются очень разные вещи). Я тоже любитель писать свои велосипеды. Примерно так я начинал писать свои первые проекты. Но у меня небыло каких-то особых убеждений и я часто все переписывал с нуля поэтому с каждым разом код становился все проще и проще. У Вас, видимо, это первый крупный проект поэтому Вы им так гордитесь. Я когда-то в школе года 2 писал «убийцу WinAmp'а». Мне тогда казалось это гениальным. Что не функция то — шедевр))
Так часто бывает, например, когда человек живет в маленьком городке, вдали от комьюнити. Видимо среди своих знакомых-родственников-заказчиков он — гениальный программист-самоучка. Начал писать свою CMS до того как взялся изучать PHP. Вероятно не пользуется IDE и не слышал даже о вышеперечисленных прекрасных вещах.) Небыло конструктивной критики в нужное время — вот результат. Я уверен, мы тут все сумасшедшие для него, пишем какие-то странные вещи, издеваемся над ним. Не можем оценить проделанный им титанический труд).
Что же вы на парня так все накинулись?) А вдруг он скоро напишет, например, убийцу Битрикса, которую все люто поносят, но от этого она не становится менее популятной и востребованой на рынке)
while ($row = $pdo->fetch()) {
doSomething($row)
}
Допустим, нужно обработать все записи в таблице, и известно, что записей несколько миллионов.
Очень часто используется присвоения внутри выражений. Например:
while ($file = readdir($dir));
while ($row = $pdo->fetch());
Но как и везде — главное не злоупотреблять этим.
Мне интересно, а как Вы сами себе представляете ответ на этот впрос?
На вскидку,
Поиск пустых значений в массиве используя
array_diff_keyиarray_filter— довольно оригинально…О каком конце идет речь? В Вашем коде здесь http://govnokod.ru/19971 после отработки крайнего блока else ничего нет.
Я же делал это не для того чтобы Вам угодить, а чтобы попытаться разобраться. Спортивный интерес.
Пробовать дальше не интересно :)
Представляю как он про фреймворки рассказывает, паттерны и т.д)
Чтобы прочитать и понять Ваш код мне пришлось сделать его более линейным. Из того, что я понял за 30 минут, могу сказать, что в Вашем коде делаются очень разные вещи). Я тоже любитель писать свои велосипеды. Примерно так я начинал писать свои первые проекты. Но у меня небыло каких-то особых убеждений и я часто все переписывал с нуля поэтому с каждым разом код становился все проще и проще. У Вас, видимо, это первый крупный проект поэтому Вы им так гордитесь. Я когда-то в школе года 2 писал «убийцу WinAmp'а». Мне тогда казалось это гениальным. Что не функция то — шедевр))