• Как использовать SQL-запросы в JavaScript?

    @Nc_Soft
    Я думаю проще от сервера рут дать, пусть юзеры делают любые запросы
    Ответ написан
    Комментировать
  • Как лучше сравнивать переменную со значением в условии PHP?

    Это так называемый йода-стайл. Делается специально, чтобы исключить случайное присваивание.

    Например, ты можешь случайно написать
    if ($user = 'admin') {

    И кто бы ни был юзер, отныне он станет админом. Ну, в рамках текущего запроса.

    А вот 'admin' = $user написать не получится.

    По той же причине крайне не рекомендуется использовать присваивание в условии, многие любят так делать, типа
    if ($user = loadUser()) {
    поскольку не всегда можно точно определить, это опечатка или так и задумано. Условие должно быть условием.
    Ответ написан
    9 комментариев
  • Можно ли в теле массива использовать условия для добавления элементов?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Оставляя за скобками синтаксическую осмысленность этого кода, зададимся вопросом осмысленности результата
    Зачем тебе массив вида
    $a = [
        'a' => 'test',
        'b' => 'test2',
        '',
    ];

    ?

    И кто мешает просто добавлять в массив элементы по условию?
    $a = [
        'a' => 'test',
        'b' => 'test2',
    ];
    !empty($x) ? $a['c'] => 'test3';
    Ответ написан
    Комментировать
  • Всегда ли нужен подготовленный запрос в PHP?

    laska
    @laska
    PHP/JS разработчик
    Сложный вопрос. Вообще если в 1000 мест вы используете подготовленные запросы, то в 1001 месте тоже их стоит использовать.

    Скорее всего если вы решите написать в этом месте обычный запрос, то в случае действительно хорошего кода надо написать комментарий вроде: "По результатам тестов (ссылка на документацию) было решено отказаться от подготовленных запросов в связи с 5% уменьшением нагрузки на сервер".

    Но это только мое мнение, тут все очень условно.
    Ответ написан
    Комментировать
  • Есть ли смысл фрилансить веб-дизайнеру на зарубежных сайтах?

    @slavik_210
    Вообще нет смысла связиваться с загнивающим Западом. Зачем вам те доллары? Исконно русские рубли в сто раз лучше.
    Ответ написан
    2 комментария
  • С чего начать web разработчику ?

    @kirill-93
    Когда я решил попробовать себя в этой сфере, я накидал себе план обучения. Что то типа html > css > js > php. Ну разумеется для начала общие сведения обо всем этом. Так как вообще не понимал что и для чего. Потом много смотрел видео уроков и сам тренеровался. Научился делать (как мне тогда казалось) интернет магазин и пошел устраиваться на работу. Взяли стажером и оказалось что я очень мало знаю. Мало из того что я учил мне пригодилось. На практике все оказалось немного иначе. Я проработал там пол года, затем ушел в другую компанию (более крупную) с мыслью "ну теперь то я кое что могу). И придя на новое место снова оказалось что я совсем новичок. так как инструменты которые тут использовались были другими. Я менял еще несколько мест, каждый раз находя более профессиональный коллектив. И каждый раз узнавал много нового. Я к тому что самый лучший способ научиться делать хорошо - работать с теми, кто лучше вас. Это конечно может быть сложно, но это будет в десятки раз продуктивнее, чем развиваться самому.
    Ответ написан
    3 комментария
  • Практичное использование orm. Где? Модель? Контроллер?

    SilenceOfWinter
    @SilenceOfWinter
    та еще зажигалка...
    В парадигме MVC работа с данными ведется в модели.
    Я бы описал MVC это как небольшую фирму в которой есть С - секретарша, которая принимает заказ и передает его M - боссу, он в свою очередь говорит V - художнику что и как нарисовать. Полученный шедевр V передает С, которая отдает его клиенту.

    "Студентов и школьников прошу продолжить играть в Dota и не отвлекаться на мой вопрос."
    Яркий пример предвзятого отношения от которого стоит избавляться..
    Ответ написан
    10 комментариев
  • Как сделать поиск в MySQL по разным полям?

    @whats
    Друзья, давайте не будем поощрять такие вопросы и превращать сообщество в кучу тупых бездарей
    Ответ написан
    3 комментария
  • Почему psr-1 говорит использовать такую конструкцию?

    skobkin
    @skobkin
    Гентушник, разработчик на PHP и Symfony.
    Выше уже писали про то, почему. Можно добавить ещё, что если пренебрегать этой рекомендацией, то можно на каком-нибудь сервере, который не сконфигурирован использовать короткие теги, ваши сорцы засветятся наружу, т.к. будут отдавать как текст.
    Ответ написан
    Комментировать
  • Цикл while: какие условия он принимает?

    @whats
    Тостер превращается в очередной галимый форум со знаниями которые в каждом учебнике есть!!!
    Ответ написан
    Комментировать
  • Почему psr-1 говорит использовать такую конструкцию?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Потому что с <? много проблем. Рендринг XML документов (да, бывает и такое), еще какие-нибудь вещи, конфликты и т.д. По этой причине по умолчанию оно выключено в php.ini. И по этой причине в стандарте прописано вообще не использовать оный тег.
    Ответ написан
    Комментировать
  • Почему psr-1 говорит использовать такую конструкцию?

    reffy
    @reffy
    Я молодец.
    PHP также допускает короткие теги <? и ?>, однако использовать их нежелательно, так как они доступны только если включены с помощью конфигурационной директивы php.ini short_open_tag, либо если PHP был сконфигурирован с опцией --enable-short-tags .

    https://php.net/manual/ru/language.basic-syntax.ph...
    Ответ написан
    Комментировать
  • Modx, почему в хроме зависает админка?

    BlaDe39
    @BlaDe39
    PHP разработчик вот уже 7 лет...
    Не поленился и разобрал что происходит. Проблема в хроме ± в ExtJS.

    Хром неверно выполняет операцию Date.add('mi',15) и забывает перемотать день, при этом в ExtJS.TimeField не предусмотрена остановка цикла по количеству итераций и он генерирует бесконечный цикл для генерации выпадающего списка времени в поле xdatetime.

    Сделал баг-репорт в хром: code.google.com/p/chromium/issues/detail?can=1&q=D...

    Ну и простенький фикс для modx: в файле /manager/assets/modext/util/datetime.js меняем строки
    ,maxTimeValue: null
    ,minTimeValue: null

    на
    ,maxTimeValue: new Date('08/10/2014').clearTime().add('mi', (24 * 60) - 16)
    ,minTimeValue: new Date('08/10/2014').clearTime()

    Что ограничивает нам время публикации на 23:44, но временно решает нашу проблему.

    Не знаю, стоит ли писать патч-реквест для modx, т.к. бага явно в хроме.
    Ответ написан
    4 комментария
  • Чем заслужил свою популярность Laravel?

    ajaxtelamonid
    @ajaxtelamonid
    Laravel
    Тем, что там можно писать мало там, где мы привыкли писать много. Подобный "конвеншн овер конфигурейшн" - он помимо прочего оставляет ощущение, что автор пишет не сферическую вещь в вакууме, которая якобы должна подойти всем, а для нас, для простых рабочих пацанов с окраин, со своими вполне конкретными юзкейсами. Т.е. он 1. человек умный и 2. знает жизнь. Это подкупает.

    Например, в output идет то, что возвращено из контроллера, а если возвратить ORM-объект или массив (точнее коллекцию) ORM-объектов, то будет отдан json, причем со всеми связанными объектами. Масса нужных в хозяйстве вещей, которые идут из коробки (миграции, редис, кэш с множеством провайдеров, работа с очередями, консольная тулза artisan для разнообразных обслуживающих вещей). Изкоробочная работающая сборка вьюх в лейаут, минимум возни с авторизацией. Скоупы в ORM. Кусочки конфигов в файлах, которые удобно ставить в .gitignore. В общем, масса такого вот, мелкого, но очень удобного.

    На Laravel ОДНОВРЕМЕННО можно уйти в глубины аццкого хадкора по Фаулеру, с тестированием всего и вся, с интерфейсами, депенденси инжекшнами, репозиториями, обсерверами, ентитями, гексагональными сценариями итд, итп, _подставить_любимый_паттерн_, И в то же время забить на это всё, сгенерить _ide_helper для подсказок по "фасадам" в IDE и фигачить код со статическими вызовами, как будто весь фреймворк написан на статике, как Кохана. Т.е. и сайт-знакомому-за-вечер и огроменный кровавый энтерпрайз делаются на одном фреймворке - в зависимости от того, насколько глубоко исполнитель хочет погружаться в свой продукт. Подобная гибкость - это, имхо, очень круто.

    И еще - как показала практика фреймворкостроительства, или ты двигаешься вместе с развитием php, либо ты делаешь "более лучшее, удобное и грамотное" решение и тихо загниваешь с своем междусобойчике за пару лет. Laravel двигается максимально близко к php - следование psr, composer-платформа в качестве базы, фрейморк ставится оттуда и пакеты расширения тоже имеют composer-формат. Что говорит о том, что у фреймворка есть все шансы прожить долгую и счастливую жизнь.
    Ответ написан
    Комментировать