Вышел сентябрьский номер журнала UserAndLINUX

После длительного перерыва возобновлён выпуск электронного журнала UserAndLINUX. Журнал предназначен для обычных пользователей, для тех, кто использует компьютер для повседневной деятельности и хочет познакомиться с миром СПО. На страницах журнала в основной массе опубликованы перепечатки ранее размещённых в Сети материалов и переводов.

Тема сентябрьского номера (PDF, 12 Мб, 48 стр.) – «Музыка и Linux».

Joomla: определение главной страницы

Чтобы в Joomla вывести какие-либо данные только на главной странице сайта (например, рекламу Sape), надо эту главную как-то определить программно. Порывшись на просторах интернета, я нашел такой кусок кода:

Удалить BOM из строки на PHP

Многие программы добавляют байты 0xEF, 0xBB, 0xBF в начале любого документа, сохраняемого как UTF-8. Это метка порядка байтов Юникода (англ. Byte Order Mark, BOM), также её часто называют сигнатурой (соответственно, UTF-8 и UTF-8 with Signature).

По наличию сигнатуры программы могут автоматически определить, является ли файл закодированным в UTF-8, однако файлы с такой сигнатурой могут некорректно обрабатываться старыми программами, xml-анализаторами и РНР.

Проверка удаленного файла на существование

Для проверки удаленного файла на существование достаточно распарсить заголовок ответа, полученный методом HEAD, на наличие фразы 200 OK, которая говорит о том, что все в порядке.

Построение интерактивной карты с Raphaël

Raphaël — это мощная библиотека, которая должна упростить работу с векторной графикой в Интернете. Сегодня я научу вас, как создать интерактивную карту с нуля.

Реализация fluent interface на PHP

Текучий интерфейс (англ. fluent interface , название придумано Эриком Эвансом и Мартином Фаулером) — способ реализации в разработке программного обеспечения, объектно-ориентированного API, нацеленный на повышение читабельности исходного кода программы.

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