Задать вопрос
  • Как идентифицировать посетителя сайта по полу и возрасту без регистрации?

    Adamos
    @Adamos
    stratosmi,
    Персональные данные - это не просто любые данные человека.
    А те, по которым его можно однозначно идентифицировать.

    Вы это сами придумали?
    Закон (152-ФЗ ст. 3) гласит:
    персональные данные - любая информация, относящаяся к прямо или косвенно определенному или определяемому физическому лицу
  • Можно ли размещать ссылки на запрещенные сайты, заблокированные Роскомнадзором?

    Adamos
    @Adamos
    dollar, окей, давайте отложим знамя борьбы за правое дело и посмотрим на проект с точки зрения вашего будущего адвоката.
    Вы предполагаете упростить доступ к сайтам, доступ к которым заблокирован решением суда в соответствии с действующим законодательством. Вряд ли вам стоит ожидать снисходительного отношения к вашей затее со стороны исполнительной власти.
    Ваша оценка вредности или интересности заблокированной информации, а также исповедуемые вами максималистские принципы решительно никого в данном контексте не интересуют.
  • Можно ли размещать ссылки на запрещенные сайты, заблокированные Роскомнадзором?

    Adamos
    @Adamos
    dollar, а вы таки реально собираетесь сделать каталог ссылок на детское порно, экстремизм и наркотики? Так себе идея, если вас волнуют отношения с законом.

    А если вы создадите каталог сайтов, которые ни при чем, но попали под эту дурную раздачу от РКН - к вам вряд ли можно будет сформулировать какие-то претензи...
  • Пожалуйста оцените мое убогое ООП?

    Adamos
    @Adamos
    0x131315, у такого проекта, кроме основной открытой, должна быть еще и основная тайная цель - не привязываться слишком плотно к Битриксу, чтобы можно было безболезненно соскочить ;)
  • Пожалуйста оцените мое убогое ООП?

    Adamos
    @Adamos
    Stanislav, в общем, давать какие-то рекомендации про то, как угодить рекламодателю, тут бессмысленно, а значит, сообразнее всего будет "дышать, как дышится" и сосредоточиться на более прагматичных моментах.
  • Пожалуйста оцените мое убогое ООП?

    Adamos
    @Adamos
    Stanislav, Боюсь, у большинства работодателей в сфере РНР за время, потраченное еще и на пояснительную записку, вы получите еще один минус ;)

    По факту, значительная часть работы в РНР всегда была не изобретением архитектуры, а следованием той архитектуре, которую подразумевает CMS или фреймворк. Лишние изыски на конвейере только вредны, как мы понимаем.
  • Пожалуйста оцените мое убогое ООП?

    Adamos
    @Adamos
    Stanislav, как раз со стороны работодателя кодер, который сочиняет отдельный класс, состоящий из одной функции - прочитать текстовый файл или записать JSON - получает минус в рейтинг ;)
  • Пожалуйста оцените мое убогое ООП?

    Adamos
    @Adamos
    v1ad13r, просто не рассчитывайте, что вы прочтете пару трудных книжек - и вам все станет ясно. Эти книги могут помочь вам разобраться со своими ошибками, но для этого все равно нужно наделать ошибок самостоятельно ;)
  • Пожалуйста оцените мое убогое ООП?

    Adamos
    @Adamos
    изучите паттерны проектирования, изучите SOLID, DRY, KISS и остальные модные словечки, постарайтесь всё это осознать, или, на крайняк - зазубрить. Всё придет с опытом

    Вообще-то наоборот, без опыта зазубривать эти словечки - только плодить говнокод другого типа, оверинжиниринг без понимания, зачем это нужно. Надо, чтобы теория и опыт приобретались постепенно и гармонично.

    Да, задачу можно разбить на три разных класса. Но, по большому счету, заморачиваться с классом-читателем и классом-писателем в этом учебном проекте смысла не вижу. Ничего не банального они делать все равно не будут.
    Главное - парсер. Ему можно подать в конструктор массив строк (неважно, кем и как полученных), а в выводе получить массив же значений, с которыми можно сделать что угодно - хоть JSON, хоть XML, хоть просто в лог записать. Да, в реальном парсере объемы обработки могут не позволять такую архитектуру, но для учебного - сойдет.
  • Пожалуйста оцените мое убогое ООП?

    Adamos
    @Adamos
    $parser = new MyParser('http_access.log', MyParser::INPUT_FILE);
    $parser->config([
      'views' => ['field' => MyParser::FIELD_ANY, 'filter' => MyParser::FILTER_COUNT],
       'urls' => ['field' => MyParser::FIELD_URL, 'filter' => MyParser::FILTER_COUNT_UNIQUE],
      'traffic' => ['field' => MyParser::FIELD_TRAFFIC, 'filter' => MyParser::FILTER_SUM],
    ...
    // ну и дальше - как фантазии хватит ;)
    ]);
    $parser->parseToJson('result.json');
  • Пожалуйста оцените мое убогое ООП?

    Adamos
    @Adamos
    v1ad13r, тогда смотрите: вот вы пишете парсер.
    Как он может понадобиться в будущем? Естественно, имя файла (а может быть, и источник данных) изменятся. Так что данные имеет смысл получить через конструктор класса.
    Затем, ему придется разбирать примерно одно и то же, но, вполне возможно, нужен будет разный вывод. Почему не сделать информацию о выводе динамической и не дать возможность настроить ее соответствующей функцией? По сути, все поля получаются примерно одинаково, вопрос только, какую именно регулярку применить и какие дополнительные операции понадобятся (не так уж и много вариантов). Фактически, это при желании программируется таблично, с заданными в классе константами - и, главное, довольно наглядным использованием класса извне.
    Примерно так.
  • PHP | Как сделать игру страна - столица?

    Adamos
    @Adamos
    Этот код предлагает пользователю угадать столицу страны, которая будет выбрана случайным образом после того, как он даст ответ. Подумайте еще.
  • Какой купить лазерный принтер домой?

    Adamos
    @Adamos
    lukoie, ничего не могу сказать вам про облачную печать - никогда не пользовался.
  • Какой купить лазерный принтер домой?

    Adamos
    @Adamos
    Saboteur, и где ТС сказал, что у него Десяточка и только Десяточка?
    У меня дома четыре Убунты, две iOS и Семерка на одном ноуте в дуалбуте.
    Мой Бразер готов все это обслуживать... С НР тоже проблем быть не должно. А делает ли Сапоп для своих нынешних моделей хоть какие-нибудь дрова, кроме как под Десяточку? Основываясь на собственном негативном опыте - сомневаюсь.
  • Какой купить лазерный принтер домой?

    Adamos
    @Adamos
    Saboteur, вряд ли вам удастся переубедить меня в том, с чем я лично сталкивался.
    Уступать в совершенно аналогичной железке действительно нечему. Но НР не забывает, что есть пользователи с легаси-системами, а также линуксоиды и маководы, а Сапоп считает возможным на них сэкономить. Что для меня (администратора гетерогенной сети и линуксоида дома) ставит на его продукции жирный крест. Априори.
  • Какой купить лазерный принтер домой?

    Adamos
    @Adamos
    Saboteur, потребителю-то пофиг, кто на ком стоял. НР выдает более качественный продукт, без приключений вроде "у нас нет дров под вашу версию Винды, а если у вас Линь или Мак - то мы вообще в домике". При аналогичной механике. Поэтому всерьез рассматривать Сапоп просто нет смысла.
  • Как исправить ошибку в шаблоне класса?

    Adamos
    @Adamos
    Roman, одно другому совершенно не мешает ;)
  • Как исправить ошибку в шаблоне класса?

    Adamos
    @Adamos
    Roman, кстати, да, о статических анализаторах - ими тоже желательно привыкнуть пользоваться сразу.
  • Как исправить ошибку в шаблоне класса?

    Adamos
    @Adamos
    Roman, в учебном процессе говнокод считается удобрением ;)
  • Как исправить ошибку в шаблоне класса?

    Adamos
    @Adamos
    У вас же учебный проект? Сверните вывод массива на экран в метод класса и вызывайте его в каждой функции, которую используете - увидите, что происходит.
    А дебажить взглядом вашу простыню никто не будет.