<MyRusakov.ru />

Разработчик игр на Unreal Engine

Разработчик игр на Unreal Engine

Этот комплект с нуля всего за 7 месяцев сделает Вас Unreal-разработчиком. И при этом учиться достаточно 1 час в день.

Начнёте Вы с основ программирования, постепенно перейдя к C++. Затем очень подробно изучите Unreal Engine, и после научитесь программировать на C++ в Unreal Engine. В конце создадите крупный проект на C++ в Unreal Engine для своего портфолио.

Комплект содержит:

- 416 видеоуроков

- 95 часов видео

- 1024 задания для закрепления материала из уроков

- 3 финальных тестирования

- 4 сертификата

- 12 Бонусных курсов

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Новые функции в PHP 5.5.

Новые функции в PHP 5.5.

В этой статье я расскажу про некоторые полезные функции, которые появились в PHP 5.5.

Для начала разберём, как можно выбрать любой символ в строке

$str = "mystring"[3];
echo $str;

Мы получим символ t. Т.е., теперь мы можем работать со строками, как с массивами.

Раз упомянули массивы, давайте посмотрим и на них. Для начала следует сказать, что теперь массив можно создать просто с помощью [], как в языке JavaScript, а не писать array(). Обращаться же к элементам массива можно точно так же, как и к строкам.

$arr = ['el1', 'el2', 'el3'][1];
echo $arr;

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

Как сделать, чтобы выбирался случайный элемент массива? Можно так:

$arr = ['el1', 'el2', 'el3'];
$el = $arr[array_rand(0,2)];
echo $el;

Но этот способ уже старый. Теперь же мы можем указать функцию rand() прямо в квадратных скобках.

$arr = ['el1', 'el2', 'el3'][rand(0,2)];

Таким образом будет и код лучше и производительность выше.

Теперь поговорим про блок finally в конструкции try catch.

try {

} catch($e) {

} finally {

}

Данный блок finally вы могли видеть в других языках, теперь он появился и в языке PHP.

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

function div($n) {
  if(!$n) {
   throw new Exception("Деление на ноль");
  }
  return 1/$n;
}

try {
  div(3);
  div(0);
} catch($e) {
  echo "Ошибка: " + $e->getMessage();
} finally {
  echo "Работа скрипта завершена";
}

У нас есть функция, которая выполняет деление, и выбрасывает исключение, если мы пытаемся делить на 0. В первом случае у нас всё сработает, во втором же мы получим исключение, но несмотря на это, мы всё равно увидим надпись "Работа скрипта завершена" в обоих случаях. Это очень удобно. Как пример, работа с базой данных. Вы в начале подключаетесь к ней, а в блоке finally отключаетесь, несмотря на то, сработал ваш скрипт или нет.

И напоследок разберём, что такое генераторы.

Генератор - функция, возвращающая множество значений "на лету". Обычно используется вместе с foreach(). Только, если в обычных функциях используется ключевое слово return, чтобы вернуть значение, то в генераторах используется ключевое слово yield.

function generator() {
  yield "Элемент 1";
  yield "Элемент 2";
  yield "Элемент 3";
}

foreach(generator() as $s) {
  var_dump($s);
}

В результате мы получим все наши строки. Как же работает наш генератор? В теле цикла foreach на первой итерации интерпретатор php заходит внутрь функции generator(), видит там ключевое слово yield и возвращает значение "Элемент 1", которое записывается в $s. Затем, на второй итерации, он снова делает всё то же самое, но начинает уже не с первого элемента, а со второго, а дальше по аналогии.

Надеюсь, что вы узнали что-то новое для себя и всё поняли, но если у вас возникают трудности с пониманием данной статьи, то советую приобрести курс PHP и MySQL с нуля до гуру, где вы не только узнаете основы php, но и закрепите знания на практике.

Пишите в комментариях про что вы хотите узнать, и я постараюсь написать статью на эту тему.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (4):

analitic analitic 15.04.2014 00:33:58

Поелезная статья,

Ответить

analitic analitic 15.04.2014 00:54:34

Здравствуйте, Михаил Русаков, а где можно узнать всё о версии PHP 5.5?

Ответить

php_programmer php_programmer 15.04.2014 01:57:00

Здравствуйте, Евгений. Узнать всё о PHP Вы можете на официальном сайте php.net

Ответить

dsmts dsmts 15.04.2014 20:50:53

Мне показалось, что в последнее время очень увеличилось содержимое каждой статьи. Статьи стали больше напоминать сборник полезных советов. Пока дочитал до конца, забыл про что было в начале. Возможно я не прав, но лучше сделать несколько статей коротеньких, чем всё в кучу спихивать. Лучше какой-нибудь пример по теме привести поподробнее в конце статьи. Извиняюсь что не в тему написал.

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.