![]() ![]() ![]()
Какой рейтинг вас больше интересует?
|
Главная /
Каталог блоговCтраница блогера RMCreative.ru - Блог/Записи в блоге |
![]() |
RMCreative.ru - Блог
Голосов: 1 Адрес блога: http://rmcreative.ru/feed/ Добавлен: 2008-06-12 21:34:00 блограйдером ZaiSL |
Что нас ждёт в PHP 5.5
2012-10-16 06:01:08 (читать в оригинале)PHP 5.5 планируется выпустить в Феврале-Марте 2013. Отвечать за релиз в этот раз будет Julien Pauli, который приедет на WebConf в ноябре.
Версия 5.5 будет обратно совместма с остальной линейкой 5.x, так что можно будет смело обновляться. Итак, интересности из транка, которые, возможно, попадут в 5.5.
foreachlist
Интересное добавление к синтаксису:
$users = array( array('Foo', 'Bar'), array('Baz', 'Qux'); ); // раскидываем массив в переменные foreach ($users as $user) { list($firstName, $lastName) = $user; echo "First name: $firstName, last name: $lastName. "; } // а вот так можно будет в 5.5 foreach ($users as list($firstName, $lastName)) { echo "First name: $firstName, last name: $lastName. "; }
generators
Генераторы — новый способ довольно сжато описывать эффективно работающие итераторы, используя минимум кода. Функция или метод, в котором встречается ключевое слово yield
автоматически становится генератором:
function getLinesFromFile($fileName) { // на каждой итерации выполняем всё до первого yield if (!$fileHandle = fopen($fileName, 'r')) { return; } // while (false !== $line = fgets($fileHandle)) { // то есть до сюда yield $line; } // а вот эта часть выполнится только когда не вызовется yield fclose($fileHandle); } // выполнения функции не происходит потому как внутри есть yield $lines = getLinesFromFile($fileName); foreach ($lines as $line) { // работаем с $line }
Работает всё это довольно шустро.
hash_pbkdf2
Новая функция hash_pbkdf2
замедляет обычное хеширование (например, SHA-256) для того, чтобы сделать перебор достаточно трудоёмким занятием, которое может растянуться на десятилетия.
Данную тему я уже затрагивал.
Кстати, в документации к hash_pdkdf2
имеется замечание, что для паролей всё-таки лучше использовать crypt
.
Упрощённый API для хеширования паролей
Так как хеширование паролей необходимо в большинстве приложений, разрабатываемых на PHP и при этом очень многие не понимают, как это сделать правильно, Anthony Ferrara, поработавший над RFC и реализацией, решил эту задачу упростить.
Вот так будет выглядеть сохранение пароля:
$password = "foo"; $hash = password_hash($password, PASSWORD_DEFAULT); // записываем хеш в базу
А вот так его проверка:
// читаем хеш из базы if (password_verify($password, $hash)) { // пароль верный } else { // пароль не верный }
Разыменование констант, строк и массивов
Можно будет так:
echo array(1, 2, 3)[0]; // 1 echo "foobar"[2]; // o echo "foobar"["foo"][0] // f echo [1,3,4][2]; // 4 echo ['a', 'b'][mt_rand(0, 1)]; // a или b
empty заработает с функциями
Это сильно упростит всем нам жизнь:
if(!empty($this->getPosts()) { // ... }
Другие изменения (не факт, что все будут в 5.5)
- Выкинули модификатор
/e
изpreg_replace
в пользуpreg_replace_callback
. - PHP 5.5 не будет работать на Windows XP и 2003.
- Функция
boolval
. Аналог(bool)
. - Получение полного имени класса с namespace через
FooBar::class
. - Пропуск параметров функций.
- Скалярный хинтинг для функций.
- Свойства класса через геттеры и сеттеры.
Отдельно стоит отметить предложение улучшенной компиляции через построение AST. В 5.5 реализации точно не будет, но штука интересная.
Сейчас PHP компилируется по мере выполнения. Всё делается в один проход. В RFC предлагается перейти к двупроходной компиляции. Сначала парсер будет разбирать всё в дерево. Затем уже это дерево будет компилироваться. Посередине будет возможность засунуть разные хорошие оптимизации.
С одной стороны получаются дополнительные расходы на компиляцию, с другой, при использовании APC получается сильный выигрыш на более оптимальных инструкциях для Zend Engine.
Также данное изменение упростит код компилятора, что положительно скажется на дальнейшем развитии PHP.
Полезные плагины для PhpStorm
2012-10-16 04:19:04 (читать в оригинале)Поделюсь тут списком того, что я использую с PhpStorm.
Дополнительные форматы файлов
- BashSupport.
- CMD Support.
- Ini4Idea.
- Markdown.
- Apache Config (.htaccess) support.
Полезняшки
- Scratch — не привязанный к проекту таб для заметок. Открывается нажатием
ALT+C
. - Tabdir.
- LiveEdit — «живое» редактирование файла. Изменения отражаются в Chrome сразу же. Поддерживает и PHP в том числе.
- Database Support, SQL Support — замечательная связка, практически позволяющая на пользоваться сторонним софтом для работы с SQL и базами данных.
WebConf Riga 2012
2012-10-12 01:06:19 (читать в оригинале)10 и 11 ноября пройдёт взявшая в 2011-м перерыв WebConf Riga. В прошлый раз конференция прошла отлично.
В этот раз всё будет ещё интереснее:
- Основной язык конференции сменился на английский.
- Серверсайд-поток выглядит очень внушительно. Не менее интересны клиентсайд и бизнес.
Мой доклад будет также будет на английском и ориентировочно будет называться «Yii, frameworks and where PHP is heading to». Попытаюсь выразить мысли по поводу того, куда всё катится и что с этим делать. Ну и, думаю, без Yii не обойдётся.
Место проведения, как и в 2010, Tallink Hotel. Приходите, будет интересно.
Если будет желание пообщаться в перерывах или после конференции, пишите. Скорее всего, останусь в Риге на какое-то время.
Релизнулся Google mod_pagespeed
2012-10-12 00:44:20 (читать в оригинале)О данном модуле для Apache 2.2, призванном полностью автоматически улучшить скорость загрузки страниц, я уже кратко упоминал. Занимается он тем, что перед отдачей в браузер жмёт картинки, оптимизирует CSS и JavaScript, отдаёт нужные заголовки для браузерного кеширования ресурсов и делает всякие не сильно распространённые оптимизации. После всё кешируется на диске.
- Официальный анонс
- Официальный сайт
Скрытые возможности инструментов разработчика Chrome
2012-10-05 13:17:50 (читать в оригинале)Мегаполезная презентация о скрытых возможностях отладчика Chrome. Нашёл для себя несколько очень полезных штук и собираюсь попробовать оказавшийся очень простым API.
Рассматриваем



![]() | ||
+140 |
160 |
Zoxx.ru - Блог Металлиста |
+121 |
146 |
artnotes.ru |
+113 |
313 |
Yukari_7 |
+81 |
140 |
кино и люди |
+26 |
139 |
Mellanius.ru |
![]() | ||
-1 |
72 |
Bestmult.info - лучшие мультфильмы для просмотра on-line |
-1 |
67 |
Блог |
-4 |
62 |
Выкрутасы скачать бесплатно |
-9 |
15 |
Скачать все субтитры |
-10 |
14 |
Скачать субтитры L |

Загрузка...

взяты из открытых общедоступных источников и являются собственностью их авторов.