
Быстрый поиск
Введите фрагмент названия статьи для поиска
PCL's PHPiD 2.1 Public Release
04.02.2016 | Категория: Мои программы | Автор: ManHunter

Скриншот программы PCL's PHPiD
PCL's PHPiD - программа для определения чем зашифрован или обработан PHP-скрипт, всего определяет более 80 различных протекторов и обфускаторов. PCL's PHPiD представляет собой один из модулей закрытого проекта Massacre, снабженный графической оболочкой (файл phpid.exe), а также консольный вариант программы (файл phpid_ce.exe). Поиск, в основном, выполняется по сигнатурам, так что теоретически возможны неточности в идентификации, но мне пока такие скрипты не попадались. Также некоторые обфускаторы используют сходные алгоритмы (например, PHP LockIt! и PHP Defender) и на выходе дают практически одинаковый результат. В этом случае точно определить, чем обработан скрипт, не получится, и будет выбран наиболее похожий вариант. Скрипты также можно передавать через командную строку и drag'n'drop.
Читать статью целиком »
Просмотров: 31171 | Комментариев: 95
Проверка стойкости пароля с помощью подсчета энтропии
18.12.2015 | Категория: Web-мастеру и не только | Автор: ManHunter

Проверка стойкости пароля с помощью подсчета энтропии
Каждому пользователю интернета приходилось регистрироваться на каких-нибудь сайтах или сервисах, и одна из обязательных составляющих любой регистрации - придумывание пароля. Есть даже официальные рекомендации по составлению паролей, не говоря уже о многочисленных статьях на эту тему. Многие сервисы при регистрации пользователя проверяют наличие определенных групп символов в пароле, в результате складывается ситуация, как в верхней половине приведенного здесь комикса. А вот как определить, действительно ли тот или иной пароль является сложным?
Читать статью целиком »
Просмотров: 10307 | Комментариев: 12
Как на PHP корректно прибавить месяц к дате
27.11.2015 | Категория: Web-мастеру и не только | Автор: ManHunter

Как на PHP корректно прибавить месяц к дате
Одна из интересных задач, с которой мне приходилось сталкиваться на практике при работе с датами на PHP, это так называемый "календарный месяц". То есть некий интервал дат, отличающийся на месяц. Если дата находится где-то в середине или в начале месяца, то никаких сложностей, просто увеличиваем номер месяца на единицу, при необходимости корректируем год. А проблема начинается в тех случаях, когда дата начала интервала приходится на какое-нибудь число в конце месяца. Просто увеличить значение месяца на следующий, оставив число без изменений, нельзя, полученная дата может оказаться несуществующей. Добавлять 30 или 31 день тоже некорректно, в коротком феврале итоговая дата после такого прибавления перемахнет на начало марта. Вот для наглядности несколько примеров, чтобы было понятно, о чем идет речь:
Code (PHP) : Убрать нумерацию
- //------------------------------------------------------
- // Дата в начале или в середине месяца
- //------------------------------------------------------
- echo date('d.m.Y',strtotime('2015-01-12 +1 month'));
- // 12.02.2015 - правильно
- //------------------------------------------------------
- // Дата в конце месяца
- //------------------------------------------------------
- echo date('d.m.Y',strtotime('2015-01-29 +1 month'));
- // 01.03.2015 - неправильно! Ожидалось 28.02.2015
- echo date('d.m.Y',strtotime('2015-01-31 +1 month'));
- // 03.03.2015 - неправильно! Ожидалось 28.02.2015
- echo date('d.m.Y',strtotime('2015-11-30 +1 month'));
- // 30.12.2015 - неправильно! Ожидалось 31.12.2015
Читать статью целиком »
Просмотров: 17754 | Комментариев: 6
Определение координат места съемки из EXIF на PHP
08.07.2015 | Категория: Web-мастеру и не только | Автор: ManHunter

Определение координат места съемки из EXIF на PHP
Окончательно решив аппаратную задачу записи GPS-координат в файлы, осталось решить программную задачу их чтения. Вариант на Ассемблере у меня уже давно есть, а вот на PHP нормальных решений не было. Причину, по которой я не пользуюсь штатными функциями PHP, я изложил в предыдущей статье, повторяться не буду. К тому же мне стало интересно самостоятельно распарсить дополнительные секции EXIF, основываясь на их спецификации.
Читать статью целиком »
Просмотров: 6087 | Комментариев: 1
Поворот изображения на основании данных EXIF
02.05.2015 | Категория: Web-мастеру и не только | Автор: ManHunter

Поворот изображения на основании данных EXIF
Сложно представить современный интернет без загруженных фотографий. Это социальные сети, форумы, фотогалереи, фотохостинги и множество других ресурсов и сервисов. В зависимости от композиции, фотографии могут быть как вертикальными, так и горизонтальными. Но ни одна камера технически не в состоянии сделать вертикальный снимок, все без исключения снимки делаются горизонтальными, а ориентация (угол поворота) кадра записывается в секцию EXIF. Программы просмотра считывают эти данные и показывают изображение с нужным углом поворота. При обработке графических файлов средствами PHP, информация об ориентации игнорируется, поэтому при загрузке фотографий на различные сайты полученное изображение может оказаться повернутым, так как именно в таком виде снимок был сделан камерой. Конечно, можно предложить пользователю выполнить предварительную обработку фотографии в каком-нибудь графическом редакторе, но, во-первых, не все пользователи умеют с ними работать, а во-вторых, порой бывает очень сложно объяснить людям, почему у них в программе просмотра все отображается как надо, а после загрузки "все сломалось".
Читать статью целиком »
Просмотров: 11167 | Комментариев: 13


