Задать вопрос
  • Как сделать (и есть ли готовая тулза) преобразование 2д-карты в массив строк?

    Есть такой редактор tiled
    умеет сохранять в json и xml форматах
    Ответ написан
    Комментировать
  • Расчет памяти при работе php gd?

    Stalker_RED
    @Stalker_RED
    В идеале это высота * ширина * количество_бит_на_пиксель
    Для 32-битного цвета будет
    5000 * 5000 * 32 = 800 млн бит, это чуть меньше 800 МБ.

    На практике, при обработке потребуется примерно раза в 2.5 больше (эмпирический коэфициент, который вполне может зависеть от окружения и параметров сборки).
    Ответ написан
    Комментировать
  • Как правильно установить phpMyAdmin на PHP7 и MySQL 5.7?

    opium
    @opium
    Просто люблю качественно работать
    Нахрена это все вы ставите на древний дебиан то, ставьте девятый дебиан и там все ок из коробки
    Ответ написан
    Комментировать
  • Какая разница между данными вариантами?

    sergiks
    @sergiks Куратор тега JavaScript
    ♬♬
    Первый плох, что в одной строке две переменные объявляются.
    Второй плох тем, что два var.

    Я бы так (сейчас заминусуют.. А, нет, тут нельзя минусовать : )
    var tempScrollTop
      , currentScrollTop = 0
    ;

    Запятая в начале некоторых смутит, но так можно смело удалять строку, не боясь накосячить с запятой.

    Upd. Главное же различие в том, что в 1-м варианте переменная tempScrollTopостаётся неинициализированной, её значение undefined, а во 2-м варианте ей даётся начальное значение 0.
    Ответ написан
    6 комментариев
  • Как сделать узел на svg?

    1. Надо нарисовать кривыми Безье путь этого узла в каком-нибудь векторном редакторе, напр. Adobe Illustrator:
      как это выглядит
      3870afe253d5421aaeebb9dd84570db3.png

    2. в этом редкаторе сохранить файл как SVG или просто скопировать оттуда SVG-код нарисованного пути. В Illustrator в диалоге сохранения копии файла как SVG есть кнопка «Показать SVG-код»
      (Show SVG Code)
      665467c951de4f8486dcf5d967326386.png

    3. в веб-документе вставить этот путь и дать ему пунктирный стиль через stroke-dasharray, скруглёные концы через stroke-linecap="round", нужную толщину через stroke-width и цвет через stroke:
      SVG код вашего узла
      <svg width="800px" height="369.643px" viewBox="0 0 800 369.643" enable-background="new 0 0 800 369.643">
      <path fill="none" 
        stroke="#596E7A"
      	stroke-width="10"
      	stroke-miterlimit="10"
      	stroke-dasharray="25,25"
      	stroke-linecap="round"
      	d="M34.762,225.595c25.084,109.862,211.31,151.786,342.262,108.929	c129.701-42.448,212.358-186.755,180.357-288.095C543.096,1.19,460.075-8.983,449.372,67.834
      	c-15.801,113.4,167.532,164.904,318.724,34.547"/>
      </svg>

    Результат
    Ответ написан
    Комментировать
  • Есть ли конструктор сложных SQL запросов?

    mindtester
    @mindtester
    http://iczin.su/hexagram_48
    так от БД пляшите:
    - в аксессе встроенный
    - для MS SQL - SSMS, VS+SSDT
    - DevArt dbForge студии
    - .. по остальный - так гугл в помощь.. билдеров на самом деле до дури.. правда "остальные" чаще уже платные... но в большинстве случаев потриалить вдоволь, братья пираты помогают ))

    ps https://www.jetbrains.com/datagrip/ опять же.. (хотя и платный.. кстати.. у JetBrains все беты всех продуктов - фри ;))).. а так же кроссплатформенные в основном.. ну и https://www.jetbrains.com/toolbox/app/?fromMenu в помощь ;))).. в том смысле что сбилдить запрос и куда то потом его примерить - думаю беты будут в основном вполне пригодны ))
    Ответ написан
    Комментировать
  • Как скопировать сайт без последствий для поисковых систем?

    Maksclub
    @Maksclub
    maksfedorov.ru
    Чем это чревато помимо угрызения совести?
    Ничем — индексируется контент (тексты)

    и поменять уже все текстааааааа под себя

    5a895aea9c61c706151244.jpeg
    Ответ написан
    Комментировать
  • Как можно убрать html теги с базы данных средствами php?

    Stimulate
    @Stimulate
    могу
    preg_replace('/<([^>]+)>/siu', '', $names[$i]);
    Ответ написан
    Комментировать
  • Как написать твит-бота на PHP не имея опыта в программировании?

    solotony
    @solotony
    покоряю пик Балмера
    Собственно упрощенная модель. Жена принесла коньяк - начинаю тестировать

    <?php
    
    
    class Man
    {
        protected $fakeVar;
        
        public function go()
        {
            /* do it */
        }
    
        public function sleep()
        {
            /* do it */
        }
    
        public function eat()
        {
            /* do it */
        }
    
        public function crap()
        {
            /* do it */
        }
    
        public function play($time)
        {
            /* do it */
        }
    
        public function isSleeping() { /* do it */ return $this->fakeVar; }
        public function isEating() { /* do it */ return $this->fakeVar; }
        public function isCraping() { /* do it */ return $this->fakeVar; }
        public function isBusy() { /* do it */ return $this->fakeVar; }
    }
    
    interface Drinkable
    {
        public function drink($volume);
    }
    
    class PhpDeveloper extends Man
    {
        public function code($time)
        {
            /* do it */
        }
    
        public function study($time)
        {
            /* do it */
        }
    
        public function isCoding() { /* do it */ return $this->fakeVar; }
        public function isStudying() { /* do it */ return $this->fakeVar; }
        public function isBusy() { /* do it */ return $this->fakeVar; }
    
        public function go()
        {
            parent::go();
            /* do it */
        }
    }
    
    
    class WhiskeyDeveloper extends  PhpDeveloper  implements Drinkable
    {
        const THRESHOLD = 0.01;
        const BALMERPEAK = 0.13;
        private $alcogolConcentration;
    
        public function drink($volume)
        {
            /* do it */
        }
    
        public function detectConcentration()
        {
            /* do it */
            return $this->alcogolConcentration;
        }
    
        public function go()
        {
            parent::go();
    
            if ($this->isBusy())
                return;
    
            if ($this->detectConcentration() < self::BALMERPEAK - self::THRESHOLD)
            {
                $this->drink(0.05);
                $this->study(10);
                return;
            }
    
            if ($this->detectConcentration() > self::BALMERPEAK + self::THRESHOLD*10)
            {
                $this->sleep();
                return;
            }
    
            if ($this->detectConcentration() > self::BALMERPEAK + self::THRESHOLD)
            {
                $this->play(10);
                return;
            }
    
            $this->code(10);
        }
    
    }
    Ответ написан
    Комментировать
  • Личный кабинет - средства реализации?

    @davidnum95

    php хуже работает с загруженными файлами
    js дырявый в плане утечек из БД

    Предчувствую понапишите вы в тз всякую ересь.
    Наймите специалиста, который хорошо разбирается в технической части и составлении тз.
    Ответ написан
    4 комментария
  • Какой существует бесплатный и self-hosted/desktop конструктор интерфейса на базе Bootstrap?

    Maksclub
    @Maksclub
    maksfedorov.ru
    Бесплатная и очень крутая (для Винды и Линукса — что для меян очень важно):
    Pingendo

    Описание с видео работы программки для 3 версии, 4 чуть отличается по дизайну
    https://maksfedorov.ru/blog/all/prototipy-saytov-v...
    для 4 версии также есть веб-интерфейс

    Кликабельно
    5a734cca8cd49875804262.png
    Ответ написан
    1 комментарий
  • Дает ли строгая типизация в PHP 7 прирост производительности?

    Начал писать ответ комментарий https://toster.ru/answer?answer_id=937197, но ответ получился большим и поэтому решил поместить его отдельно.

    DevMan , я попробую уточнить ваше утверждение, что немного снижает.
    На самом деле, при использовании скалярных тайпхинтов снижается производительность вызова функций, поскольку возникает некий дополнительный оверхед на валидацию аргументов и приведение значений к нужным типам (если не используется strict_types). Но! Так как внутри функции значения аргументов уже приведены к нужным типам, то при использовании аргументов не происходит неявного приведения типа.
    Поясню на синтетическом примере:
    function foo($x) {
        $result = 0;
        for ($i = 0; $i < 100; $i++) {
            $result += $i + $x;
        }
        return $result;
    }


    Если вызвать эту функцию так: "foo('123')", то в таком случае внутри цикла аргумент будет неявно приводится к целому числу 100 раз. Если вызвать функцию так: "foo(123)", то в таком случае аргумент не будет внутри цикла приводится к целому числу. Очевидно, что второй вариант более производительный:
    ~$ time php70 -r 'function foo($x) { $result = 0; for ($i = 0; $i < 10000000; $i++) { $result += $i + $x; } } foo("123");'
    
    real    0m0.860s
    user    0m0.855s
    sys     0m0.005s

    ~$ time php70 -r 'function foo($x) { $result = 0; for ($i = 0; $i < 10000000; $i++) { $result += $i + $x; } } foo(123);'
    
    real    0m0.508s
    user    0m0.500s
    sys     0m0.008s


    В то же самое время, если добавить к аргументу скалярный тайпхинт, то тогда значение аргумента один раз будет приведено к тайпхинту и внутри функции уйдёт весь оверхед связанный с неявным приведением типа:
    ~$ time php70 -r 'function foo(int $x) { $result = 0; for ($i = 0; $i < 10000000; $i++) { $result += $i + $x; } } foo("123");'
    
    real    0m0.502s
    user    0m0.498s
    sys     0m0.003s

    ~$ time php70 -r 'function foo(int $x) { $result = 0; for ($i = 0; $i < 10000000; $i++) { $result += $i + $x; } } foo(123);'
    
    real    0m0.504s
    user    0m0.495s
    sys     0m0.008s


    Таким образом скалярные тайпхинты и правда оказывают некий малозаметный оверхед на вызов функции, но при этом они убирают дальнейший оверхед связанный с неявными приведениями значений, таким образом, в среднем код может и ускорится при использовании скалярных тайпхинтов, а в среднем общая производительность останется такой же.

    Зато использование строгой типизации не даст запустить функцию в неконтроллируемом состоянии: когда функция ожидает на вход целое число, а по какой-то причине подсунули массив:
    $var = $_GET['foo'];
    bar($var);
    , для get-параметра foo=123 вызов будет корректным, а для foo[]=123 вызов функции приведёт к TypeError; для foo=abc тоже будет TypeError. Разумеется, этот пример сильно надуман и тут нужно использовать "нормальный" валидатор.
    Ответ написан
    1 комментарий
  • Что за библиотека использована для этой симуляции космоса и гравитации?

    Bobrodon
    @Bobrodon Автор вопроса
    Обычный землянин
    soulwire.github.io/sketch.js нашел нечто похожее
    Ответ написан
    Комментировать
  • Есть ли практические бесплатные видео уроки по Laravel 5?

    @antimind
    Блин, ну как же так? Как можно изучать программирование по видеоурокам? Вы что, читать совсем разучились что ли? По Laravel есть отличная документация, в том числе и на русском языке. Куча примеров, куча сниппетов, куча гайдов. Вот почему сейчас эти видеоуроки в таком тренде?
    UPD. Простите, если был резок, но я реально не понимаю, как это можно учиться программированию по видео. Для меня это то же самое, что в детстве писали сочинения по фильмам, а не по книгам.
    Ответ написан
    4 комментария
  • Как лучше всего играть в торрент игры по сети?

    CityCat4
    @CityCat4 Куратор тега Сетевое администрирование
    Жил да был черный кот за углом...
    игра купленная на торренте

    ...умер от разрыва шаблона...
    Ответ написан
    Комментировать
  • Событие jQuery при попадание элемента в поле зрения пользователя?

    userAlexander
    @userAlexander
    Верстка наше все)
    В поле зрения пользователя это значит когда пользователь доскроллил до элемента который находиться где то в контенте?

    Например
    var target = $('.elem');
    var targetPos = target.offset().top;
    var winHeight = $(window).height();
    var scrollToElem = targetPos - winHeight;
    $(window).scroll(function(){
    	var winScrollTop = $(this).scrollTop();
    	if(winScrollTop > scrollToElem){
    		//сработает когда пользователь доскроллит к элементу с классом .elem
    	}
    });
    Ответ написан
    4 комментария
  • Как вставить символ через каждый n-ое число символов с строке?

    Minifets
    @Minifets
    Hello world!!!
    function splitter($subject, $n, array $symbols) {
        return implode(array_map(function ($part) use ($n, $symbols) {
            if (strlen($part) === $n) {
                $part .= $symbols[array_rand($symbols)];
            }
            return $part;
        }, str_split($subject, $n)));
    }
    
    echo splitter('0000000000000000000000', rand(1, 3), [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]);
    Ответ написан
    Комментировать
  • Какие есть курсы для php разработчика среднего уровня?

    Maksclub
    @Maksclub Куратор тега PHP
    maksfedorov.ru
    Я конечно на уровне джуниора (7 мес), но курсов уже не найти... по крайней мере они дадут 20% от своей эффективности... именно из курсов могу посоветовать мастер-классы Елисеева (раз и два).

    Как правило нужно больше работать с документацией — да, прямо брать мануал MySQL, PostgreSQL, Yii2, Symfony, Laravel и все проштудировать — уже есть понимание большого количества применения написанного и их особенностей, если у вас конечно средний уровень... особый акцент нужно сделать на архитектуре — советую проникнуться DRY, KISS и обязательно GRASP, научиться в автотестирование (Codeception, PHPUnit, Selenium)... и практикам разработки (TDD, BDD, DDD)

    Я к тому, что вы уже четко представляете, в чем слабы и должны лупить в эти точки...

    Главный совет — найди работу. Например моя статья о том, как я искал (+ пару лайфхаков)
    Как джуниор-разработчику найти работу (vc.ru)
    Работа дает взрывной рост навыков (конечно если не клепать сайты на ЦМС и не работать чем-то вроде дизайнопрограммистом :)
    Ответ написан
    1 комментарий
  • Подходит ли ноутбук для веб-дизайнера?

    morihaos
    @morihaos
    На 99% вопросов уже есть ответы в инетке...
    Привет,
    15.6" для дизайна? Вам себя не жалко :-), ей Богу.
    Через месяц-два поймете, что нужен внешний монитор, как минимум. Потом придется купить охлаждающую подставку под ноут, ибо шуметь будет этот AMD вентиляторами ого-го как, как только начнете запускать "тяжеловесы" от Adobe. На охлаждающей подставке высота расположения увеличится, и работать руками на клавиатуре будет неудобно, прикупите выносную клаву, ну и конечно мышку. В итоге, этот ноутбук при работе у вас будет обычным системным блоком. Это имеет смысл только в том случае, если вы будете много перемещаться и работать с ноутом мобильно. Но это уже работа, а не плотное изучение.

    ИМХО, за 50-60 тыс. можно собрать вполне приличный стационарный набор, на котором будет очень комфортно работать.
    Ответ написан
    1 комментарий