Вышел php 5.5 alpha 1
- 16 Ноябрь, 2012
Вот это новость! Наконец-то, вышла php 5.5 alpha 1 (update: уже доступна php 5.5 alpha 3,), из нового:
Новый способ хеширования паролей
Поддержка finally в try/catch блоках
Обсуждение
Для меня самое удивительное было узнать, что finally исполнится, даже если в catch блоке выполнится return (либо break, либо continue).
try {
return 2;
} finally {
echo "Это будет вызванно\n";
} //Эхо никогда не выполнится
echo "Вы меня не увидите";
Поддержка генераторов (привет python )
Разыменование в массивах / строках
Обсуждение
echo array(1, 2, 3)[0]; //выведет 1
echo "foobar"[2]; //выведет o
echo "foobar"["foo"][0] //выведет f
echo [1,3,4][2]; //выведет 4
Улучшения в intl расширении
Очень много нововведений, см. полный список
Новый способ хеширования паролей
Поддержка list() в foreach цикле
Обсуждение новвоведения.
Что можно будет делать:
$users = [ ['Павел', 'Дуров'], ['Андрей', 'Рогозов']];
// До новвоведения
foreach($users as $user){
list($firstName, $lastName) = $user;
echo "$firstName по фамилии $lastName участвовал в разработке ВКонтакте";
}
// После новвоведения
foreach($users as list($firstName, $lastName)){
echo "$firstName по фамилии $lastName участвовал в разработке ВКонтакте";
}
С помощью этой фичи избавляемся от лишних переменный — в примере выше — это $user. Не скажу, что это часто требуется, но на мой взгляд писать на пхп становится более лаконичней, хотя python синтаксис в этом плане намного ясней и понятнее.