Одной строкой на PHP можно найти индекс у элемента массива $array, который содержит максимальное (или минимальное) значение:

$max = array_keys($array, max($array))[0];

Заменив функцию max() на min(), получим минимальное значение.

Написал простую библиотеку для реализации корзины товаров на сайте, хранящейся в сессии. Она состоит из двух классов: объекта корзины (что-то типа пачки или палета из одного товара или нескольких таких же) и собственно корзины. Скачать zip-архивом.

Сама библиотека - cart.php:

Самодостаточная библиотека Requests призвана восполнить недостаток в человеческих инструментах PHP для отправки HTTP-запросов. Авторы правильно посчитали, что у всех нас полно других интересных вещей, нежели разборки с занятным API cURL, все опции и параметры которого просто невозможно держать в голове. Да и не всегда cURL доступен. Cокеты обеспечивают лишь низкоуровневый доступ и требуют от программиста парсить все ответы HTTP самостоятельно.

Мне нравятся простые библиотеки, не перегруженные функционалом на все случаи жизни, но которые четко и быстро решают часто встречающиеся задачи. К таким библиотекам я отнес бы минификатор Bender - класс, выполняющий простую и полезную функцию комбинирования CSS и джаваскриптов в единые файлы (один для всех CSS и один для всех javascript) с последующей их минимизацией на лету. В результате сайт грузится быстрее засчет снижения числа HTTP-запросов, уменьшая нагрузку на сервер и трафик. Bender написан на чистом PHP и не требует каких-либо сторонних библиотек на Java или Python.

Люди делятся на хороших и тех, кто не делятся. 

Главное в погоне за адреналином – успеть убежать. (с) М. Мамчич

 (запал, иссяк)

 (Диета)

 (парень, гей)

 (Юмор, слова, Россия)

 (семья)

 (отношения)

Вывести строку запроса к базе данных, созданную через db_select(), можно командой print $query; где $query - объектная переменная запроса. Однако вместо аргументов будут выведены именованные параметры (placeholders) типа :db_condition_placeholder_1, :db_condition_placeholder_2 и т.д. Чтобы заменить их реальными аргументами, можно использовать функцию:

function _get_query_string(SelectQueryInterface $query) {
  $string = (string) $query;
  $arguments = $query->arguments();

  if (!empty($arguments) && is_array($arguments)) {
    foreach ($arguments as $placeholder => &$value) {
      if (is_string($value)) {
        $value = "'$value'";
      }
    }

    $string = strtr($string, $arguments);
  }

  return $string;
}

Она выводит запрос строкой в человекопонятном виде.

По-умолчанию кодировка, которая устанавливается при подключении клиента к серверу MySQL в конфигах назначена latin1. На веб-странице при этом будут отображаться знаки вопроса ???? вместо отечественных букв, если в базе данных текст сохранен, например, в кодировке UTF-8. Чтобы подключение скрипта к MySQL производилось изначально корректно, пропишем в файле /etc/mysql/my.cnf в секции [mysqld] следующие строки:

init_connect='SET collation_connection = utf8_general_ci'
character-set-server = utf8
init_connect='SET NAMES utf8'
skip-character-set-client-handshake

В данной статье я хотел бы поделиться собственным опытом создания компании, не обремененной месторасположением. Лично мы называем это организованный фриланс.

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

Часть 1 и часть 2.

Жизнь – это бесконечное количество мелочей, с годами достающих по-крупному…

***

Среди нашедших себя далеко не все в восторге от находки.

***

Тяжелее жить становится всё легче и легче…

***

В гущу событий наступив…

***

Что ни мокрая курица, то с советами, как выйти сухим из воды. 

***

Толком не наскакались, а уже допрыгались…

***

В безвыходное положение всегда свободный вход.

 

 

 

Наверх