Отличное замечание, но:
— strrev тоже накрошит.
— такие задачи чаще возникают при обработке байтовых потоков, а не текстовых строк.
— для разбиения UTF строк лучше использовать другие механизмы, например preg_split("~~u",$a).
15. Не только __call, но и traits.
21. А почему не «foreach ($a as $v) array_unshift($b, $v);»?
22. implode(array_reverse(str_split($a)));
28. Почему только print_r, а не var_dump, json_encode, implode, ver_export? И объяснить, в чём между ними разница.
33. Функция. Почему она должна вывести (echo) а не вернуть (return)?
34. array_walk($arr, function($i){ if ($i%5===0)echo $i.PHP_EOL;});
37. Вообще наглая ложь. Любая переменная (кроме скаляра размера машинного слова) передается по ссылке. Только если при этом не указан амперсанд, при изменении этой переменная будет создан клон в памяти.
39. foreach.
40. $max = 0; array_walk($arr, function($i) use (&$max){ if ($max<$i) $max=$i;});
По остальным главам: не понятно, почему XSS описан в разделе MySQL. Нет вопроса о проверке переменной на существование в JS, про замыкания и области видимости.
Художники всего мира используют одинаковые кисти, одинаковые краски и одинаковые приёмы. Любая картина — это набор мазков на холсте. Писатели всего мира используют одинаковые клавиатуры, любая книга — это набор букв. Строители всего мира используют одинаковые кирпичи, бетон и сваи. Любое здание — это набор плит, камней и стекла. Всю планету в жизни не обойти. Вселенная состоит из атомов пары сотен элементов. Такие рассуждения кого хочешь доведут до депрессии. Моё мнение — не надо париться на этот счёт, в мире много прекрасных сайтов и прекрасного кода, пускай они и составлены из одних и тех же скобок и цифр.
С другой стороны, для громадного числа людей нет вообще никаких сайтов. Есть поисковик (в простейшем случае — это адресная строка браузера или телефона). Что он выдаёт, откуда и почему — они не знают и знать не хотят. Найти и читать/смотреть они могут что попадётся из миллиарда страниц — от youtube до страницы с приколами, созданной школьником за вечер на бесплатном хостинге. Да, со временем многие начинают осознавать, что есть авторитетный ресурс, а что — помойка, с точки зрения своих интересов, и круг сайтов сужается. Но все ли и всегда ли и через какое время, и имеет ли смысл ли им думать об этом?
Не знаю, откуда такая статистика про процент недальновидных вебмастеров по государствам, но спорить не буду, наверное вам виднее. Вряд ли это является аргументом в пользу того, чтобы мне, как потребителю, предпочитать подвальный шаред хостинг «за три копейки», руководствуясь лишь ценой.
«Рашен вебмастер» — это что за тип такой, чем отличается от других вебмастеров? Снижение скорости загрузки страниц на 1 секунду — во сколько это раз? Двухдневный даунтайм, особенно в период актуальных для тематики событий, вполне может ударить по прибыли. А если сервер внезапно будет отключен из-за того, что сосед по железу разместил у себя нелегальную картинку — будут убытки?
Этим, к сожалению, грешат не только аптекари, но и некоторые недобросовестные врачи. Иногда то, что они выписывают — является полными коммерческими аналогами традиционных копеечных препаратов, вплоть до витаминов и аспирина, что уж говорить о плацебо вроде этого «оциллококцинума». И почти всегда, при этом, они продаются тут же, за углом.
Мне, как потребителю, вообще без разницы откуда и как получается стоимость услуги. Всё равно хостинг выбран будет исходя из баланса цены, качества и безопасности.
Сервер не тянет, надо кеш у nginx включить, или на jsfiddle выложить.
Кнопки «Демо» не кликаются, Chromium 19.0 (osx): Uncaught SyntaxError: Unexpected identifier index.html:109
И да, Вебкит это конечно хорошо, но про это не стоит забывать.
— strrev тоже накрошит.
— такие задачи чаще возникают при обработке байтовых потоков, а не текстовых строк.
— для разбиения UTF строк лучше использовать другие механизмы, например preg_split("~~u",$a).
21. А почему не «foreach ($a as $v) array_unshift($b, $v);»?
22. implode(array_reverse(str_split($a)));
28. Почему только print_r, а не var_dump, json_encode, implode, ver_export? И объяснить, в чём между ними разница.
33. Функция. Почему она должна вывести (echo) а не вернуть (return)?
34. array_walk($arr, function($i){ if ($i%5===0)echo $i.PHP_EOL;});
37. Вообще наглая ложь. Любая переменная (кроме скаляра размера машинного слова) передается по ссылке. Только если при этом не указан амперсанд, при изменении этой переменная будет создан клон в памяти.
39. foreach.
40. $max = 0; array_walk($arr, function($i) use (&$max){ if ($max<$i) $max=$i;});
По остальным главам: не понятно, почему XSS описан в разделе MySQL. Нет вопроса о проверке переменной на существование в JS, про замыкания и области видимости.
С другой стороны, для громадного числа людей нет вообще никаких сайтов. Есть поисковик (в простейшем случае — это адресная строка браузера или телефона). Что он выдаёт, откуда и почему — они не знают и знать не хотят. Найти и читать/смотреть они могут что попадётся из миллиарда страниц — от youtube до страницы с приколами, созданной школьником за вечер на бесплатном хостинге. Да, со временем многие начинают осознавать, что есть авторитетный ресурс, а что — помойка, с точки зрения своих интересов, и круг сайтов сужается. Но все ли и всегда ли и через какое время, и имеет ли смысл ли им думать об этом?
Кнопки «Демо» не кликаются, Chromium 19.0 (osx): Uncaught SyntaxError: Unexpected identifier index.html:109
И да, Вебкит это конечно хорошо, но про это не стоит забывать.