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

    Stalker_RED
    @Stalker_RED
    Если "заходить", в смысле браузером, то смотрите в сторону selenium или headless chrome.

    Если все равно чем, то можно скачать страницу, вытащить каким-нибудь парсером из нее все ссылки, а затем скормить список ссылок wget-у, например. Там можно задержку между запросами поставить.
    wget -qO- --keep-session-cookies --save-cookies cookies.txt --post-data 'login=hello@example.com&pass=qwerty123&remember=1' https://mysite.com/login
    wget -nv --spider -i list.txt 
    wget -nv --load-cookies cookies.txt --spider -i list.txt --limit-rate=20k -w 3


    Или Teleport Pro скачать где-то на просторах интернетов.
    Ответ написан
    Комментировать
  • Где можно поискать старые проекты?

    Adamos
    @Adamos
    Скачайте исходники Битрикса. Там копролиты десятилетней давности присутствуют до сих пор и, к сожалению, никак не закончат свой жизненный цикл.
    Ответ написан
    Комментировать
  • Не могу определиться: PHP или Python?

    @bitrix_is_shit
    Добавлю свою каплю как чел который работает в веб студии чуть больше года, в основе делаю сайты на модексе, топ cms для разработчика, сейчас проект придет, суть проекта в подсчете слов из файла, соответственно пчп тут берет за щеку, нужно будет юзать терминал чтобы сконвектировать треклятый эполовский pages и numbers а так же rtf чтобы читал кирилицу, к тому же для картинок юзается тесеракт, потом из всего этого нужно будет сделать сайт и прикрепить оплату по api, суть такова что проекты которые будут интересны и будут требовать больше усилий и знаний, то это уже на питоне, конечно для веб в основном нужен пчп, просто потому что большинство сделанно на нем, но геморойностью его дебага в вебе это да, к тому если нужно будет сделать какую-либо автоматизацию,то это однозначно быстро и нормально на питоне, по любому придется юзать что-то кроме php, читать и править код легче и приятней в питое, нежели в php, в основном если идти на фриланс, то придется лопатить кучу говна на php чтобы кому что либо поправить(проверено). В общем php полюбому придется учить если хочешь идти работать в веб студию, если не хочешь учиться и идти уже спец на питон или подобный язык(лучше начать с php, и если захочешь расти то будешь уже стараться выучить яп), в веб студии единственный выход это php, как будешь расти если будешь изучать другой язык, и сможешь показать и доказать что на данной технологии лучше реализовать то или иное, то будешь делать на том что нравится, а без пыхи в веб студиях не куда, если попросят сделать какой-то бот, или монитор, или что-то больше чем сайт, то забудь про пыху!На питоне не так и сложно найти работу естетвенно нужно иметь какие-либо проекты, но кайф от работы на питоне гораздо больше, особенно когда ты будешь делать не сайты а сервисы и приложения.
    Ответ написан
    2 комментария
  • Быть разработчиком веб-сайтов невыгодно?

    Jump
    @Jump
    Системный администратор со стажем.
    Быть разработчиком веб-сайтов невыгодно?
    Кому? Не зная про кого идет речь, нельзя сказать выгодно это или нет. Лучше всего спросите этого человека напрямую.

    сроки разработки веб-сайта могут достигать одного или даже двух месяцев
    Сроки разработки могут варьироваться от десятка минут, до десятка лет.

    оплата во многих случаях не превышает 10 000 - 15 000 рублей
    Совершенно верно, во многих случаях оплата не превышает этих пределов, а во многих других случаев превышает.

    Я, наверное, ношу розовые очки. Мне пора их снять?
    Вам стоит обратиться к психологу, у вас явные проблемы, если вы не знаете какие очки носите.
    Ответ написан
    Комментировать
  • Как установить Laravel 5 на Open Server?

    profesor08
    @profesor08
    Как установить Laravel 5 на Open Server?

    Никак. Инсталишь Laravel в любую папку и запускаешь php artisan serve

    Не используй OpenServer, на эту хрень ведуться все нубы, потом плачут от проблем. В документации к Laravel есть инструкция по установке и запуску. Используй ее. Для этого тебе понадобится только установить свежую версию php и возможно какую-то бд вроде mysql.

    5 минут чтения должны раз и навсегда отвадить от всякой херни вроде OpenServer и ему подобных.
    https://www.php.net/manual/ru/features.commandline...

    Если не умеешь использовать консоль (копипастить команды из документации), то научись копипастить команды из документации в консоль.

    Если дело доходит до писанья кипятком от опенсервера, то в документации к Laravel есть раздел по деплою, его и надо изучать.
    Ответ написан
  • Сайт с челенджами от веб-студий?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега JavaScript
    Руководитель frontend направления, предприниматель
    https://www.codewars.com/ и иже с ними.

    Во время работы команд челленжи не особо и нужны, так как в нормально построенном процессе работы (например отсутствие времени на эти сраные челленжи), так как сама по себе работа это прокачка навыка и вечное превозмогание.
    Ответ написан
    2 комментария
  • Какой учебник подойдет полному новичку чтобы изучить PHP?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Котеров - PHP7 в подлиннике
    Ответ написан
    Комментировать
  • Как сегодня писать сайты?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    TL;DR : на вп вы можете пилить сайты сами, иногда пользуясь услугами фрилансеров, это выйдет эффективнее и дешевле.

    Можно ли обойтись без CMS в сегодняшних реалиях, и если да, то как выглядит разработка сайта?
    Сильно зависит. Есть ооочень много подходов, от "дядя Коля, че ты без сайта ходишь как дурак, давай я тебе на джумле быстро сайт за 50 баксов сделаю, гыы...", до уровня серьезных студий, где пишут серьезные проекты на современных фреймворках и с хорошей продуманной архитектурой, и ценник начинается от десятков тысяч убитых енотов, но за эти деньги вам сделают все: тз, дизайн, фирменный стиль, документацию на проект, технические требования, подбор серверной архитектуры етц... Как вы сами сказали - рынок обширен и, добавлю, весьма неоднороден.

    Если я пишу сайт к примеру на WP, то как обстоят дела с вёрсткой, что могут программировать фронтэндщики, а что бэкэндщики? Просто много где пишут, что на WP, можно самостоятельно создать сайт, не зная особо программирования, где могут фигурировать программисты?
    Типовой сайт без особого дизайна и функционала действительно можно поднять в одно рыло буквально за день. Если заморочиться с дизайном - можно либо взять/купить готовые темы, коих сегодня мульён и 2 сверху, или дизайнеру заказать за ценник примерно х2 от готового дизайна, ну, зависит еще от требований конечно. Программист нужен в случаях когда нужно реально что-то такое, что редко встретишь или какая-то специфическая задача под нужды заказчика, все типовые "хотелки" обычно решаются готовыми плагинами. Естественно что все эти прелести имеют серьезный изъян в виде хреновой производительности и кошмарного кода, лезть в который не хочется даже в костюме полной химзащиты.

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

    Всё просто. Находите лицо или что вам там нужно используя готовую предобученую модель. Далее накладываете в нужном месте своё изображение с помощью imagemagick.
    Для наложения нужного эффекта на лицо лучше находить не просто координаты квадрата лица, а всех его точек.
    Нахождение лиц и т.д. на php: https://habr.com/ru/post/358902/
    imagecopy: php.net/manual/ru/function.imagecopy.php
    Ответ написан
    Комментировать
  • Перевод mp3 файла в текст с использованием php - какие есть решения?

    @ff0xff Автор вопроса
    pocketsphinx отлично работает и русский язык есть.
    Ответ написан
    1 комментарий
  • Как составить таблицы БД для многоуровневой реферальной системы?

    skobkin
    @skobkin
    Гентушник, разработчик на PHP и Symfony.
    Если хотите одним простым запросом выбирать из дерева - вам нужно смотреть в сторону хранения древовидных структур: Nested Set, Materialized Path, Adjacency List, Closure Table, etc.
    У них есть свои плюсы и минусы - вам нужно подобрать под вашу задачу в зависимости от того, какие операции с деревом вы будете производить.
    Вот здесь про них уже есть ответ. А вот здесь - статья.
    Ответ написан
    Комментировать
  • Какой фрэймворк выбрать Yii 2 или Symfony 2?

    IvanCher
    @IvanCher
    Мысли шире
    Симфонисты не работают с yii2 и не до конца понимают о чем пишут :)
    Я скажу так: оба фреймворка на высоте, по возможностям одинаковы, но подходы очень разные.
    Объективно скажу так: на yii2 не получится запускать отдельные модули без запуска всего приложения, тут у симфони2 огромный плюс. Так же у симфони более классные консольные команды для генерирования каркасов, мне больше нравится, чем gii(но дело вкуса). Но по факту большинство сильных сторон симфони не оправдывается в связи с высоким порогом вхождения. Найти хорошего симфони программиста намного сложнее, чем найти его на yii2. Поэтому взависимости от бюджета и масштаба проекта можете выбирать. Симфони2 - это больше уровень корпораций, yii2 более простой при практчески том же функционале.
    Если знаете симфони2, то лучше подтяните его. Yii2 изучить намного проще, намного всё прозрачнее внутри работает, там Вам хватит пару вечеров, чтобы пройтись по исходникам и всё для себя понять как изнутри как работает.
    Ответ написан
    7 комментариев
  • Объясните как работает php-fpm?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Для начала почитайте что такое SAPI. Затем представьте что apache + mod_php разделили на web-сервер, который проксирует запросы на php-fpm и отдает статику, и собственно отдельный web-сервер который имплементит SAPI и выполняет запросы связанные только с php. То есть статику отдавать мы можем только через php. Суть примерно та же что и у apache2 + prefork + mod_php но оптимизированный только для работы с php. Так же можно поставить на фронт более быстрый и легковесный сервер который умеет проксировать запросы.

    То есть php-fpm это эдакий fast-cgi сервер который постоянно держит готовые для работы пул-процессов (сколько в пуле процессов настраивается, так же как и от какого пользователя их запускать и все такое прочее). Каждый новый запрос уходит в какой-либо процесс из пула, запрос отрабатывает, возвращаем результат тому кто попросил (web-серверу обычно). Если процесс падает (fatal допустим) - поднимаем новый.

    Принципиальной разницы между apache2+mod_php нету, просто упрощается инфраструктура. Наш web-сервер должен только уметь проксировать запросы и отдавать статику, а php-frpm вообще может быть на разных машинах (балансировщиком можно раскидывать запросы). Ну и сами понимаете, nginx + php-fpm будет быстрее обрабатывать запросы чем apache2+mod_php какой бы мы менеджер процессов не использовали в апаче. Минусов по сравнению с apache+mod_php я даже не могу предложить.

    А php-runtime не зависит от этого. Он один на всех, CLI, FPM, mod_php...
    Ответ написан
    7 комментариев
  • Как реализовать на сайте безопасную сделку?

    TemaSM
    @TemaSM
    Fullstack, DevOps, InfSec
    Да все верно сказал, Escrow, но только если на автомате и свое, то вот план:

    1 - Заказчик
    2 - Исполнитель

    1) Исполнитель выполнил работу, которую заказал заказчик, далее исполнитель загружает на сайт/сервис выполненную работу - она каким либо образом урезается(если звук, то накладываются доп помехи; если картинки, то вотермарки и все остальное в подобном духе).
    2) Заказчик получает уведомление СМС, email, Viber ... и заходит, чтобы оплатить работу.
    3) После выполнения оплаты, средства резервируются в системе(сайте).
    4) Заказчик получает доступ к демо-предпросмотру выполненной работы и прямо через сообщения на сайте сообщает исполнителю все ли нравится и что стоит изменить/добавить.
    5) Исполнитель может загружать новые образцы выполненной работы, а заказчик может наблюдать за изменениями, которые постоянно сохраняются в системе
    6) Как только заказчика все устраивает, он нажимает на кнопку подтверждения завершения сделки и в этот же момент, заказчик получает доступ к загруженной работе исполнителя без каких либо вотермарков, а исполнитель в свою очередь получает оплаченную ранее заказчиком сумму, но уже от имени системы. Далее исполнитель может выбрать куда выплатить средства(на счет системы, на карту, на электронные кошельки...)

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

    Таким образом у нас получился эдакий Escrow своего производства.

    P.S. Никогда не реализовывал подобную схему, а лишь изложил первое, что пришло в голову.
    Ответ написан
    1 комментарий
  • Как проще сделать перебор слов?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    <?php
    $keyboard_ru = [
        1 => [],                 2 => ['А','Б','В','Г',], 3 => ['Д','Е','Ж','З',],
        4 => ['И','Й','К','Л',], 5 => ['М','Н','О','П',], 6 => ['Р','С','Т','У',],
        7 => ['Ф','Х','Ц','Ч',], 8 => ['Ш','Щ','Ъ','Ы',], 9 => ['Ь','Э','Ю','Я',],
        0 => [],
    ];
    
    $keyboard_en = [
        1 => [],                2 => ['A','B','C',], 3 => ['D','E','F',],
        4 => ['G','H','I',],    5 => ['J','K','L',], 6 => ['M','N','O',],
        7 => ['P','Q','R','S'], 8 => ['T','U','V',], 9 => ['W','X','Y','Z',],
        0 => [],
    ];
    
    $input_str = 757;
    
    $variants_ru = get_variants($keyboard_ru, $input_str);
    print_r($variants_ru);
    
    $variants_en = get_variants($keyboard_en, $input_str);
    print_r($variants_en);
    
    function get_variants($keyboard, $input_str)
    {
        $input_codes = str_split($input_str, 1);
    
        $groups = [];
        foreach($input_codes as $idx => $code) {
            foreach($keyboard as $num_code => $chars) {
                if($num_code == $code && !empty($chars))
                {
                    foreach($chars as $char) {
                        $groups[$idx][] = $char;
                    }
                }
            }
        }
    
        //get combinations
        $result = array(array());
        foreach ($groups as $property => $property_values) {
            $tmp = array();
            foreach ($result as $result_item) {
                foreach ($property_values as $property_value) {
                    $tmp[] = array_merge($result_item, array($property => $property_value));
                }
            }
            $result = $tmp;
        }
    
        return array_map('join', $result);
    }
    Ответ написан
    2 комментария
  • Какой набор пакетов использовать, чтобы реализовать простой веб-сайт?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Disclaimer: я регулярно даю на собеседованиях тестовое задание "сделать что-то без фреймворков", все что написано дальше это моя личная точка зрения.

    Смысл задания в том, чтобы увидеть какие велосипеды будет использовать соискатель, какой код напишет когда не будет жестких рамок навязанных фреймворками.
    Если бы хотели проверить ваше умение гуглить готовое - задание звучало бы "собрать из готовых библиотек".

    Отдельный вопрос - почему вы вдруг хотите использовать внешние пакеты, если у вас нет уже проверенных с чем вы работали ранее?

    По списку:
    1. Роутер: https://github.com/search?q=php+router
    2. Аутентификация пользователей - зачем тут какой-то пакет??
    3. ORM - использование ORM в живом проекте очень холиварно. Скорее всего смысл задания - проверить еще и ваше умение писать запросы руками.
    Ответ написан
    5 комментариев
  • Какой набор пакетов использовать, чтобы реализовать простой веб-сайт?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Раз у вас с этим трдности - боюсь вы не прошли.
    Что касается пакетов:
    1. symfony/routing
    2. symfony/security-guard
    3. doctrine/orm
    Ответ написан
  • Как бороться с утечкой памяти WordPress?

    glaphire
    @glaphire Куратор тега PHP
    PHP developer
    перебор 60к элементов - это загрузка 60к элементов в память, так не принято делать и превышение лимита памяти это закономерная проблема. Обрабатывайте данные пачками (select с limit и offset), так сможете циклом выбирать очередную пачку данных и обрабатывать их поэлементно. По сути это пагинация
    Ответ написан
    Комментировать
  • Laravel vs WordPress?

    @nozzy
    Symfony, Laravel, SQL, Python, Telegram
    Некорректный вопрос.
    Правильнее сравнивать October CMS и Wordpress.
    И выбор очевиден - October CMS
    Ответ написан
    Комментировать
  • Laravel vs WordPress?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Если я выберу WordPress, то не выйдет мне это боком, если проект будет расти?
    Выйдет конечно, нет в вп ни нормальной архитектуры, ни гибкости, ни целостности. 90% плагинов и надстроек никем и никогда не тестировались нормально, ну там тесты, квалити контрол, кодестайл и вот это все.
    Все фреймворки же в основном:
    1) Гибкие и с нормальной архитектурой
    2) Покрыты тестами и удовлетворяют кодестайлу
    3) Весь новый функционал пишется поверх оттестированных компонент, если нужно что-то особенное - не надо думать как скрестить ежа с ужом, все можно сделать в едином стиле и без костылей.

    При всем при этом у движков есть такой нехилый недостаток - в них надо хорошо разбираться, хорошо знать предметную область и в целом и уметь в построение нормальной архитектуры. Что, очевидно, приводит к серьёзным расходам в плане персонала, который должен иметь уровень выше среднего.

    Совет - если это проект выстрелит/не выстрелит 50/50 - фигачьте мвп на вордпрессе, если взлетит - переписывайте. Худо-бедно оценить проект можно и на таком велосипеде. Дальше все равно надо будет писать нормальный проект.
    Ответ написан
    Комментировать