<rmcreative>

RSS

Все заметки с тегом «PHP»

Можно уточнить:

  1. Русский перевод PHP стандартов FIG

    29 декабря 2015

    PHP FIG решили убить переводы PSR и сделали это. Я не мог спокойно наблюдать за тем, как пропадает столько труда, поэтому сделал форк с русским переводом:

    https://github.com/samdark/fig-standards-ru

    5 комментариев
  2. wnmp-dev 1.1.0

    16 декабря 2015

    Обновил набор для PHP-разработки под Windows. Удалось найти нормальный менеджер процессов без зависимостей и закрыть им проблему параллельной обработки нескольких скриптов.

    Написал его Пичулин Дмитрий уже давно, но выложил в OpenSource недавно. Утилита проверена им в продакшне. Менеджер стартует заданное количество php-cgi на одном порту. В случае умирания одного из php-cgi стартует новый. Кода там очень мало и им, кстати, заинтересовались в команде PHP for Windows. Надеюсь, PHP научится так делать из коробки.

    Кроме этого, поправил конфиги nginx и немного причесал батники.

    https://github.com/samdark/wnmp-dev

    9 комментариев
  3. Выложил исходники intl.rmcreative.ru

    12 декабря 2015

    Выложил на GitHub исходники intl.rmcreative.ru, который я написал после копания во внутренностях intl, ICU и CLDR.

    https://github.com/samdark/intl-icu-data-tables

    3 комментария
  4. Yii 2.0 AR сделал все PHP ORM в независимом тесте

    6 декабря 2015

    Carsten из команды Yii добавил в тесты kenjis AR Yii 1.1 и Yii 2.0. Получились вот такие результаты. Yii 2.0 рвёт в клочья всех, кроме Phalcon.

    Сюрпризом это не стало, но, всё же, приятно.

    26 комментариев
  5. PHP 7.0.0

    1 декабря 2015

    Несколько часов назад Anatol Belski, релиз менеджер PHP, тегнул стабильный релиз PHP 7.0.0. Это значит, что сегодня-завтра мы увидим официальный анонс на php.net. Наконец, можно будет пользоваться новыми прекрасными возможностями: строгой типизацией, оператором ??, анонимными классами, безопасным рандомом и многим другим. Как приличный бонус все перешедшие получат значительный прирост производительности.

    Остальное на хабре

    Кстати, результаты опроса там очень и очень радуют.

    UPD: официальный анонс.

    5 комментариев
  6. Составные части хеш-строки bcrypt

    26 ноября 2015

    Хороший способ хранения данных для аутентификации — хеш-строки bcrypt. В PHP это реализуется при помощи crypt с алгоритмом blowfish. В более поздних версиях PHP — при помощи password_hash. В Yii для этого есть Security::generatePaswordHash(). Выглядит строка на выходе вот так:

    $2y$13$YUUgrko03UmNU/fe6gNcO.Hka4lrdRlkq0iJ5d4bv4fK.sKS.6jXu

    Длина в случае пароля всегда 60 символов.

    • 2y - версия алгоритма bcrypt. Мы используем blowfish, так что в новых версиях PHP должна быть всегда 2y.
    • 13 - cost. Стоимость вычислений. 2^13 итераций функции формирования ключа.
    • Оставшееся — конкатенированные соль и хеш, закодированные через base64 с немного нестандартным набором символов. Первые 22 символа — 16 байт соли. Оставшееся — хеш.

    При сравнении пароля bcrypt достаёт версию алгоритма, cost и соль из хеш-строки сохранённого пароля. Далее, используя их, вычисляет хеш нового пароля и сравнивает с сохранённым хешем.

    5 комментариев
  7. Вернулся из Риги с WebConf

    17 ноября 2015

    Как и планировалось, попал на WebConf в Ригу.

    Как это было (приличную часть) можно частично посмотреть в официальном twitter и по хештегу. Фото и, возможно, видео будут доступны на официальном сайте через какое-то время.

    Слайды моих выступлений (листать стрелками):

    Спасибо всем, слушателям, докладчикам и, конечно, организаторам за отличную конференцию и замечательную компанию.

    Комментировать
  8. Видео с PHP frameworks day 2015

    29 октября 2015

    Организаторы PHP frameworks day очень оперативно порадовали видео с конференции.

    Смотрим

    6 комментариев
  9. realpath() cache size tuner

    24 октября 2015

    Месяц назад сделал небольшой скриптик, помогающий настроить значения кеша realpath в php.ini.

    Важно это потому как частые вызовы realpath() без чтения из кеша выливаются в stat, то есть в чтение с диска, который чаще всего — самое узкое место в системе.

    Пользуйтесь

    1 комментарий
  10. Уязвимость dev/random и других UNIX-устройств под Windows

    20 октября 2015

    Разрабатывая код для PHP не забывайте про Windows.

    Скриншот подготовил thefsb.

    12 комментариев