Задать вопрос
  • Мультизагрузка файлов с 1 полем php?

    Добавить атрибут MULTIPLE полю type=file
    и name = upload[]
    [] - для обработки всех файлов

    Обрабатываешь собственно как обычно загруженный файл, только не забудь, что теперь $_FILES многомерный массив
    Ответ написан
    Комментировать
  • Как закрыть пробелы в математике?

    @abcd0x00
    Школьную программу можешь восстанавливать на interneturok.ru
    Ответ написан
    1 комментарий
  • Знаете ли вы программистов которые в одиночку создали крутой проект?

    @vpranker
    Dropbox, если тебе это пример то вот.
    Дрю Хьюстон, написал его на Питоне, один)
    Ответ написан
    Комментировать
  • Почему при делении получается больше а при умножении меньше?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    1. Возьмите 16 литров водки, разлейте в бутылки по 0.5 литра. Сколько поллитр получилось?
    2. Возьмите 16 поллитр. Сколько литров водки в них будет.
    Ответ написан
    3 комментария
  • Нужна книга по программированию под Android 4.4/5?

    LeEnot
    @LeEnot
    Енот-андроид
    Совет: не пытайтесь найти в книгах актуальной информации. Андроид - постоянно и очень быстро развивающаяся платформа, приемы и концепции сменяются в ней очень быстро. Вы можете взять книгу издания 2015, однако окажется, что в печать она ушла в 2014, а писал ее автор вообще в 2012-2013. А тут даже за год может многое поменяться. Android Studio 1.0 вышла в декабре 2014, как вы думаете, может автор за пол-года изучить все, описать, сдать в издательство и обеспечить актуальность информации?
    Плюшки и максимальная оптимизация, это то, чего одной (или даже несколькими) книгами достичь не удастся. Нужно постоянно читать блоги разработчиков и подобные англоязычные ресурсы, чтобы по крупицам собирать информацию. Ни в одном месте нет всего и сразу. Книга может дать только самое общее представление, но для него можно взять практически любую.
    Ответ написан
    Комментировать
  • На что рассчитывать начинающему PHP Developer (Laravel)?

    Denormalization
    @Denormalization
    1) С каких пор зарплата оценивается уровнем знания конкретного фреймворка? Может начнем зарплачу по APM мерить?
    2) Laravel сейчас в топе. Yii/Laravel/Symfony сейчас самые популярные. Не нужно зацикливаться на чем-то одном.
    3) Нужны знания не фреймворка, а просто уметь програмировать. Нужно учить PHP, а не Yii/Laravel. Фреймворк учится за пару дней до уровня "написать простой магазинчик".
    Ответ написан
  • Как обратиться к возвращаемому значению в методе?

    teet
    @teet
    while(!false == ($bd_paper = mysql_fetch_array($paper))){
              return  $papers = $bd_paper['texts'];
        }

    ну оооооочень странная конструкция!!!
    может вы хотели так написать:
    while(($bd_paper = mysql_fetch_array($paper))){
              $papers[] = $bd_paper['texts'];
        }
    Ответ написан
    4 комментария
  • Для чего программисту нужно знать физику?

    agent10
    @agent10
    Software Engineer
    Самое интересное и красивое - наверное это игры.
    Взгляните на игры AAA класса(и не только) - сплошная теор. механика(взрывы, гонки, обломки, вода).

    Вообще, всё современное IT и этот ПХП в частности - во многом обязаны Дырке..
    Ответ написан
    Комментировать
  • Куда поступать на программиста?

    @azShoo
    Одно не заменяет другого.
    Самообразования достаточно, что бы устроиться на работу, но я, лично, жалею, что в свое время не поступил в ту же Бауманку.
    Многие "базовые"(читай фундаментальные) вещи приходится сейчас разбирать и вытягивать самостоятельно.

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

    Sanasol
    @Sanasol Куратор тега PHP
    нельзя просто так взять и загуглить ошибку
    Я конечно могу разбить всё это через explode, но думаю, что можно и регуляркой.

    Русурсы лишние простаивают, решили их делом занять?
    Ответ написан
    6 комментариев
  • Что выбрать php ли java?

    В данном конкретном случае лучше доучить.
    Ответ написан
    3 комментария
  • Путь в быдлокодеры или как стать программистом с 0?

    @sergikzv
    Ну во первых верстальщиков чистых почти сейчас нету, все кто хотя бы мидл это уже фронтэнд разработчики с огромным багажом знаний, кто считает что верстка это просто тот попросту никогда не верстал ничего сложного.
    Если очень нравится визуальная составляющая то прямая дорога во фронтэнд это html, jQuery, JavaScript и конечно куда без backbonejs, angularjs - почти бесконечно можно учиться.
    Ответ написан
    2 комментария
  • Как переопределить уже объявленные функции и классы PHP(>=5.5)?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Если цель тестирование - смотри в направлении Stub и Mock объектов, из PHPUint, Codeception, Mockery. Если же для рантайма в продакшне - вероятность выстрелить себе в ногу 99.9999...%, ты не должен этого хотеть.
    Ответ написан
    9 комментариев
  • Htmlspecialchars как переопределить на другую кодировку?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    А еще можно волевым усилием переделать сайт на UTF-8.
    2014 год на дворе все таки.
    Ответ написан
    Комментировать
  • Вы в браузере набрали адрес сайта, нажали Enter. Расскажите максимально подробно о технических процессах происходящих далее?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Действительно, уважаемый. Это слишком. Вряд ли я затрону все тонкости, но попробую наметить примерный путь:

    0) Пользователь вбивает в адресную строку браузера адрес сайта (нажимая клавиши на клавиатуре, которые замыкают определённую дорожку в матрице, по которой происходит определение нажатой клавиши, что через шину USB в какой-то момент передастся OS, где это поймает HID-драйвер и вызовет определённое прерывание, что OS передаст как событие/или_ещё_как в программу, которая вызовет соотвествующую функцию из API менеджера окон, которая изменит содержимое строки и в результате когда-то будет перерисован UI-элемент, а если нажат был Enter, то начнётся следующее).
    1) Браузер вытащит из input'а строку с запросом и посмотрит, похоже ли это на адрес. Если да, то добавит недостающие уточнения (например, http или file протокол, порт и подобные довольно стандартные вещи). Если нет - то скорее всего создаст запрос в поисковую систему, установленную по умолчанию (я более не буду опускаться до таких бессмысленных деталей, как вызовы API-функций, иначе я буду набирать это сообщение ОЧЕНЬ долго). В любом случае на выходе мы по сути получим URL, который надо загрузить. Протокол file:// мы рассматривать не будем, ftp далеко не везде есть, https:// на не хватит вечности, так что остановимся на http, который по сути есть tcp/ip по умолчанию на 80 порту с определённым форматом общения.
    2) Окей, url есть. Теперь нам нужен адрес, к которому обращаться. Так как http это tcp/ip - нам нужен ip адрес. Здесь нам помогают dns-сервера. Обычно, нормальный провайдер устанавливает у себя кэш-сервера dns, которые не обращаются по стопицот раз за vk.com к ответственному серверу com-зоны. Давайте не будем отвлекаться на то, как происходит там общение, если что - вот (вики тем хороша, что часто содержит внизу релевантные ссылки). Скажу лишь то, что на выходе мы получаем ip адрес(а).
    3) Имея адрес мы можем запросить страницу. Собственно, всё что после первого слэша - это как-бы параметры для http-сервера: какую именно страницу запрашивать, он всё же не телепат. Конечно, можно было бы немного схитрить и отправить читать про tcp/ip, но ведь существует и shared-hosting. Ограничемся лишь его упоминанием. Собственно, по полученному адресу отправляется GET запрос, который и обрабатывает сервер, находящийся по полученному IP-адресу.
    4) Сервер же, получив адрес, начинает распарсивать строку, медленно вытягивая нужные данные из баз-данных и настроек, выполняются сотни скриптов, иногда делается ещё не одна сотня различных запросов на другие сервера (здесь и разного вида метрики и разного вида HADOOP и т.д.). Пройдя сквозь скрипты и темплейторы в самом конце мы получаем html-страницу, готовую к употреблению. Её-то сервер и отправит в ответе (после заголовков, конечно).
    5) Вот и началось самое интересное. Получив html страницу браузер начинает жутко надругаться над CPU, HDD и GPU, попутно сжирая тонны RAM и мусоря в swap. Виной всему нереальные для полного соблюдения стандарты от небезызвестной w3c.org. Для облегчения многие делают костыли, вроде webkit, а некоторые и вовсе забивают на него и пилят свой стандарт с преферансом и картёжницами (впрочем, в последнее время становиться лучше). Здесь снова начинаются сотни вызовов API ОС, windows manager'а и прочих библиотек, вроде boost, qt или libpng. В ходе работы в RAM строится макет, по которому потом строится нечто вроде PDF (тоже сильно векторный), что, потом, обрабатываясь быстрыми шейдерами на GPU, выдаётся на экран. Опять же, многое пропущено, но вряд ли кому-либо, кроме парня в свитере с оленями, действительно интересно, как работает GDI, DirectX или OpenGL.
    6) Ах да, мы же забыли про тысячи js-скриптов, миллионы картинок и анимации с котиками, а также о таких дополнительных плюшках, как flash-player или java-weblets. В кратце, что js, то и flash и java - это виртуалка, со специальной архитектурой. Они, виртуалки, конечно разные (хотя flash и js довольно похожи, ещё бы - ECMAScript один и тот же). JS - самый интегрированный внутрь браузера, он же и самый медленный чисто визуально (ибо последние два имеют доступ к быстрому GPU), хотя самый быстрый в попугаях. Второй постепенно вымирает и представляет из себя, так же как и третий специальную shared-библиотеку, о которой браузер как-нибудь узнал и которой скармливает специальное содержимое помечанное специальным тегом html. Третий уже почти умер и встречается лишь изредка или в каком-нибудь энтерпрайзед со страшным legacy-базой. Ну здесь из сылок разве только гугл. Ибо сколько всего - даже не сообразишь. Да и вообще, эта тема ещё скучнее GDI, DirectX и OpenGL и к свитеру с оленями требуются ещё очки с толстенными стёклами, дающие стопицот к терпению и задроству над матаном. Если в кратце, то в случае JS, всё что было загружено в память и не думает выгружаться и формирует этакое дерево - DOM, над которым с помощью специального API и происходят модификации. При этом, перед тем как исполниться, весь JS-код компилируется, в нативный для VM байт-код. То же самое в общем-то и со вторым и третьим, разве только они не имеют доступа к DOM и организовать его - дело тех ещё костылей. Ах да, забыл ещё про Silverlight (или как оно там пишется), который сдох, не успев родиться. Так же как и Java, жив в серьёзном энтерпрайзе, не поскупившийся не "дешёвую" поддержку MS.
    7) Ну... А дальше пользователь нажимает на нужную гиперссылку и всё по новой.

    За кадром остались такие костыли, как ajax, websockets и прочая асинхронная ересь. С ней всё в миллионы раз сложнее. И к очкам со свитером потребуется ещё и... а чёрт их знает, что они там ещё носят. Ну да ладно, я искренне завидую тем парням (и девушкам), которые разбираются во всей этой машине. Целиком. Ибо это лишь верхушка айсберга. Разбавленная не лучшей памятью и ужасным гуглом.

    P.S. Не бейте сильно за грамматические и синтаксические ошибки. Спеллчекер приказал долго жить, да и 5 утра как никак.

    UPDATE
    На хабр выложили неплохой перевод дающий некоторое представление, как браузер ругается над памятью и процессором. Хотя и весьма поверхностное,
    Ответ написан
    26 комментариев
  • Хочу устроиться Android разработчиком. С чего начать, куда двигаться?

    @Mintormo
    Могу посоветовать стандартный набор ресурсов:
    startandroid.ru/ru/uroki/vse-uroki-spiskom.html
    developer.alexanderklimov.ru/android
    И, как справочник, официальная документация:
    d.android.com
    Еще посоветую посматривать статьи на Хабре:
    habrahabr.ru/hub/android_dev
    Вот неплохая книга (есть на рутрекере):
    www.ozon.ru/context/detail/id/24301926

    Что касается джуниора, то лично я сам сейчас хочу им стать и составил для себя следующий план:

    1. Общая архитектура приложения. Компоненты приложения.
    2. Интерфейс (Fragments, ActionBar, диалоги и прочее). Работа с анимацией элементов управления. Создание кастомных элементов управления.
    3. Многопоточность (Threads + Handler, AsyncTask, runOnUiThread, post).
    4. Работа с файлами.
    5. Сеть. Сокеты. WebView.
    6. Сервисы.
    7. Google Maps и GPS (в перспективе возможно OpenStreetMap и MapKit Яндекса).
    8. SQLite.
    9. Протоколы. HTTP/HTTPS, JSON, XML, OAuth2, возможно protobuf.
    10. API социальных сетей (ВКонтакте, Facebook, Twitter, Instagram, Flickr).
    11. Создание виджетов.

    Вот когда с этим закончу, сделаю парочку простых проектов и пойду устраиваться джуниором. :)
    Ответ написан
    1 комментарий
  • Из-за чего повышенное потребление памяти на VPS?

    @inkvizitor68sl
    Linux-сисадмин с 8 летним стажем.
    У вас openvz с некорректно настроенными лимитами на память. Просто переехайте на любую Xen/KVM виртуалку - digitalocean, flops, например.
    Найти openvz-хостера с корректными лимитами на память посложнее будет.
    Ответ написан
    4 комментария
  • Хочу быть программистом, но не выходит. Как двигаться вперед?

    rose_solnyshko
    @rose_solnyshko
    Забудьте бред про ненужность традиционного образования. Это как служба в армии - у вас будет другая точка обзора, и это можно использовать.
    Я не стал пока что программистом, но дам вам совет, который мне в университете дал крутой преподаватель-программист. Он мне сказал: "Возьми и напиши на любом языке программирования графический редактор с такими же возможностями, как и paint brush (.. это были времена windows 3.11), а потом обратись ко мне".
    Перефразируя более современными реалиями, возьмите готовый программный продукт (не обязательно открытый), и создайте аналогичный по функционалу.

    Когда вы это сделаете, сами многое поймёте и освоите - на деле.

    А куда потом обращаться - потом и будет видно :)
    ---
    Updated:
    Хотел сразу написать, но решил подумать сначала.
    Это совет лично мне, и любому человеку: Будьте настолько свободны, насколько это возможно сегодня и там, где вы сейчас есть - во всём. Вспомните электрон (и вообще частицы), и его степени свободы, а так же то, что он всегда стремится занять более выгодное для него положение с энергетической точки зрения (такова его (условно) "жизненная среда"); обычно такое положение означает максимальный кпд с минимальными энергетическими затратами.
    Не работайте в офисе с графиком-обязаловкой. Воспользуйтесь развивающимися телекоммуникациями. Попробуйте (очень индивидуально, но..) быть хозяином себе и всему, что в вашей жизни уже есть, и будет (это надо создавать, или создавать условия для появления этого) - жить полноценным человеком.
    Почитайте здесь habrahabr.ru/company/profishop/blog/201852 с 7 абзаца.

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

    ОНО ТОГО СТОИТ

    Желаю всем на земле удачи в этом :)
    Ответ написан
    5 комментариев
  • С чего начинать изучение веб-технологий?

    Мое субъективное мнение - HTML5+JS+CSS3.

    Ответ написан
    Комментировать
  • java кодировка из windows-1251 в utf-8

    apangin
    @apangin
    Вы из потока уже не в той кодировке читаете.
    Надо создать правильный InputStreamReader:
    InputStreamReader isr = new InputStreamReader(conn.getInputStream(), "windows-1251");
    BufferedReader br = new BufferedReader(isr);
    
    Ответ написан
    3 комментария