Метка «php5»

Использование BCrypt является общепринятым и лучшим способом для хэширования паролей, но большое количество разработчиков по-прежнему используют старые и слабые алгоритмы, вроде MD5 и SHA1. Некоторые разработчики даже не используют соль для хэширования. Новый API хэширования в PHP 5.5 ставит своей целью привлечь внимание к BCrypt, упрощая работу с ним. В этой статье я расскажу об основах использования нового API для хеширования в PHP.

Новый API хэширования паролей предоставляет четыре простых функции:

  • password_hash() — используется для хэширования пароля.
  • password_verify() — используется для проверки пароля на соответствие хэшу.
  • password_needs_rehash() — используется для проверки необходимости создать новый хэш.
  • password_get_info() — возвращает имя алгоритма хеширования и различные параметры, используемые при хэшировании.

Читать полностью »

Регулярно на PHP форумах встречается вопрос, как вынести часть методов класса в отдельный файл, и если у вас тоже возникал такой вопрос, значит что-то не так в вашем коде и пора что-то менять. Правильным решением будет логически сгруппировать методы в отдельные классы и, если требуется получить все методы в одном экземпляре класса, выполнить каскадное наследование:

class Base{ /* */ }
class Foo extends Base{ /* */ }
class Bar extends Foo { /* */ }
$obj = new Bar();

Но если вы решили, что это все таки необходимо — у меня есть для вас решение.Читать полностью »

Приветствие

Всем привет! В этот радостный и, достаточно, теплый пятничный денек приключилась у меня (процитирую в более приятном варианте) «рука-лицо». Честно говоря, приключается сие действие достаточно часто, но, по обыкновению, вызывается оно от ощущения:

Боже, какой же я тупой.

В этот раз меня посетило несколько другое чувство, и, как я убедился, не только меня. Чувство это напомнило мне об одном из моих собеседований, где меня попросили написать скелет паттерна «Декоратор», который оказался в личном представлении интервьювера совершенно другим, нежели его классическое толкование.Читать полностью »

в 10:46, , рубрики: php5, symfony, symfony2, метки: ,

Сегодня вышел Symfony 2.2.

Вот список нововведений из официального блога:

  • Console: Автозавершение в командной строке;
  • Console: Прогресс-бар для длинных заданий;
  • Console: Скрытие паролей в режиме командной строки;
  • Console: Предложение пользователю выбрать из списка возможных вариантов;
  • Finder: Фильтрация по пути;
  • Finder: Поддержка синтаксиса glob в методе in();
  • Finder: Увеличение скорости на некоторых платформах;
  • HttpKernel: Новый под-фреймворк для управления фрагментами ресурсов;
  • HttpKernel: Улучшен вид вывода фатальных ошибок;
  • HttpKernel: Логирование устаревших вызовов;
  • Process: Получение промежуточных результатов выполняющихся процессов;
  • Process: Перезапуск процесса;
  • Process: Получение статуса исполняющегося процесса;
  • Routing: Поддержка URL-хостов при маршрутизации;
  • Routing: Относительные URL для схемы и пути;
  • Security: Интересные утилиты безопасности;
  • Validators: Валидаторы относящиеся к платежным системам;
  • FrameworkBundle: Улучшение производительности для функциональных тестов;
  • FrameworkBundle: Кэширование статических страниц.

Читать полностью »

Продолжаем делать ютуб.

Открытый вопрос — с уходом ffmpeg из Ubuntu, что придет на замену модулю php5-ffmpeg? Сообщите в комментариях, если вам что-то известно.

Под катом небольшая функция, написанная на PHP5, использующая модуль php5-ffmpeg, извлекающая скриншоты и статистику из видео.
Читать полностью »

А мы используем внутренние стандарты. Они действительно полезны:
стандартам совершенно не обязательно следовать;
— они позволяют быстрее и комфортнее осваиваться;
— они помогают меньше теряться при творческом процессе.

Исторически свершилось так, что мы активно используем CodeIgniter. Стандарт по разработке приложений на CodeIgniter предлагается вашему вниманию.

Я новичок, для публикации в тематический хаб не хватает кармы.
Читать полностью »

Если вы используете MAMP Pro при разработке веб-прилоежений на локальном хосте на своем маке, то скорее всего при проверке конфига Symfony вы увидите следующее:

Настраиваем конфигурацию Symfony2 для MAMP Pro в MacOS

Итак, мы видим, что конфигурация не совсем устраивает Symfony и нам рекомендовано установить кое-какие дополнительные пакеты.Читать полностью »

Настройка Nginx + LAMP сервера в домашних условиях Часть 2: Настройка backend: PHP + MySQL Здравствуйте.

В предыдущей статье, мы познакомились с настройкой связки nginx + apache в режиме хостинга и репозиториями dotdeb.
В этой статье мы познакомимся с настройкой backend: PHP, MySQL.

В части PHP мы познакомимся со следующими темами:
— общая настройка PHP
— правильная настройка PHP + Postfix для отправки писем через внутренний SMTP сервер посредством функции mail(),
— настройка кеширования кода и/или данных на основе APC.

В части MySQL я попробую раскрыть базовые моменты повышения производительности, ибо по умолчанию сервер MySQL настроен очень не эффективно.

Кто заинтересовался, добро пожаловать под кат
Читать полностью »

Экспериментальный проект, зиждущийся на технологиях html5 и css3 – DI Gallery

Кажется, что стоит отодвинуть монитор, и этот куб будет жить своей жизнью прямо в трёхмерном пространстве.

designfire.ru

Минусы тоже есть! Показал галерею своим друзьям — так вместо разглядывания моих работ (и восхваления автора!;)), они занялись самой галереей, играя её мобильными блоками!

Bogdan Mylove

Любите статичные картинки времён 90-х, плоские изображения и стандартные решения? Этот скрипт — не для вас!

designfire.ru

DI Gallery – эффектная и компактная, как коробок спичек. Всё гениальное — просто!

getincss.ru

Читать полностью »

Настройка Nginx + LAMP сервера в домашних условиях №1: Настройка frontend — backend
Здравствуйте. Недавно я задавал вопрос по поводу создания цикла статей. Вот первая статья.

В этом цикле статей вы узнаете как грамотно настроить LAMP сервер, аля «хостинг только мощней».
Мы будем использовать следующий стек: nginx — apache-mpm-itk — mod_php — mysql — linux/debian.

Буду освещать следующие темы:

  • Настройка frontend — backend
  • Расчет возможностей сервера, настройка mysql и backend
  • Рассказ об опыте на базе intel s3420gp

Совершенно уверенно могу сказать, что настройка LAMP сервера не ограничивается 6-10 командами установки и раскомментирования определенных строчек в файлах настройки.
Пример: по умолчанию nginx не дает возможности закачать на сервер тело запроса больше чем 1M. Если не настроить данный параметр, будет возникать ошибка 414 (Request-URI Too Large), при попытке добавления небольшой серии фотографий.
У apache совершенно противоположное: у него тело запроса по умолчанию не ограничено. Это делает возможным совершать пакости.

В этой статье мы познакомимся со всей настройкой досконально. В статье вы сможете найти конфигурационные файлы, подготовленные мной. Будучи педантом, мои конфигурационные файлы всегда сгруппированы по типу, например: «производительность», «генерация контента», «страницы ошибок», «сжатие», «другие настройки», «общие настройки». Мне кажется, что читаемость данных файлов становится намного лучше, если они сгруппированы.

Мы узнаем о том какие бывают простые атаки и как от них защищаться. Сразу скажу, что при базовой конфигурации frontend в лице nginx — backend apache все равно остается уязвим.

Я практически уверен, что я не смогу уместить все в одну статью. Добро пожаловать под кат.
Читать полностью »