Curl, многомерные массивы и передача файлов

Задача: из кода на PHP передать веб-службе файл с помощью curl.

Решение: Curl, многомерные массивы и передача файлов

upd: начиная с php 5.5 работа с файлами изменилась:

1
2
3
4
5
6
7
  if ((version_compare(PHP_VERSION, '5.5') >= 0)) {
    foreach ($requestVars AS $k=>$v) {
      if (strpos($v, '@') === 0) {
        $requestVars[$k] = new \CURLFile(str_replace('@', '', $v));
      }
    }
  }

Писать меньше кода

В одноименном посте Mike Grouchy призывает к максимальному уменьшению объемов кодирования. Многие заблуждаются, приравнивая программирование к кодированию. А ведь это не так. Задача программиста решить какую то проблему. И чем элегантнее и проще будет решение тем лучше. Куча инструментов и фреймворков призваны уменьшить кол-во кода. Пользуйтесь этим. Еще одна великая штука — это рефакторинг, позволяющий делать код чище.

Технологии

  • Ухты, ухты, ухты. Выбор из списка с подсказками на чистом HTML5
  • JavaScript Garden — это постоянно пополняемая коллекции документации о самых необычных частях JavaScript. Здесь собраны советы, как избежать распространенных ошибок, а также проблем с производительностью.
  • Принято считать, что php — отстой. Почему? Ну просто принято и все. Посмотрите на современное состояние PHP. Сейчас это самый развивающийся язык программирования. Посмотрите на версию 5.4. Сколько там нововведений и вкусностей. В статье «PHP is much better than you think» приведено много доводов в поддержку PHP
  • Хорошо разжеванный способ защиты формы с помощью проверочного параметра(на PHP)
  • MVC is dead, it’s time to MOVE on. MOVE: Models, Operations, Views, and Events. Сравнение этих двух методологий, с перекосом в сторону MOVE
  • 5 простых мер для повышения безопасности в PHP-скриптах:управляйте сценариями установки(установили, удалили/закрыли доступ), инклюдьте только файлы с расширением «php»(не «inc»,…), обязательно шифруйте пароли и другую «интимную» информацию, отключите глобальные переменные, обязательно инициализируйте переменные и их значения.
  • Google JavaScript Style Guide — вроде бы и так все понятно

Разное

Технологии

Разное

Просто так

Суббота. Лень. А оставлять накопившиеся ссылки на долгие три для не хорошо.
Техгологии

Разное

Как развить глубокие познания в программировании?

Сначала хотел написать о методах, которые описаны в многочисленных статьях. Но пожалуй остановлюсь на интерпретации мудрейшего изречения Йоги Бхаджан: «Если вы хотите чему-то научиться, прочитайте об этом, если вы хотите что-то понять, напишите об этом, если вы хотите освоить что-то, запрограммируйте это».

Технологии

  • 79 вещей которые должен знать любой программист — этакая «Энциклопедия Юных Сурков» для программистов. Пока собирался написать этот пост, оригинальная ссылка перестала работать. Вот тут есть часть статей из списка
  • Очередная статья про Вебсокеты. Приводится сравнение с Comet-технологией
  • Офигительная js-библиотка SlickGrid для работы с гридами(табличками)
  • Использование Traits в PHP 5.4
  • Storing Date/Times in Databases — как правильно хранить временные метки

Разное

  • Не умеешь кодировать? Воспользуйся Scroll Kit для создания своего сайта
  • Главного дизайнера Apple посвятили в рыцари