Треки
/
PHP
PHP
/
Вправи
/
Смачнюща лазанья Люсіана
Смачнюща лазанья Люсіана

Смачнюща лазанья Люсіана

Навчальна вправа

Вступ

Основи

Щоб дізнатися більше про ці теми, перегляньте сторінку концепції.

Загальний синтаксис

Відкривальний тег PHP <?php позначає початок коду PHP. Усі інструкції мають закінчуватися символом ; для розділення інструкцій.

<?php

$message = "Success!"; // Statement correctly ends with `;`
$message = "I fail." // PHP Parse error: syntax error, [...]

Для зручності читання в усіх прикладах коду відкривальний тег <?php опущено.

Коментарі

Однорядкові коментарі починаються з //.

// Single line comment

Значення та змінні

За допомогою оператора присвоєння = значення можна присвоїти змінній. Назви змінних мають починатися зі знака долара $ і відповідати правилам іменування.

$count = 1; // Assign value of 1

// Strings can be created by enclosing the characters
// within single `'` quotes or double `"` quotes.
$message = "Success!";

Функції та методи

Значення та змінні можна передавати функціям. Аргументи функції стають новими змінними, які зберігають передані значення. Функції можуть повертати будь-яке значення за допомогою ключового слова return.

function window_height($height)
{
    return $height + 10;
}

window_height(100);
// => 110

Функції всередині класів та їхніх екземплярів називаються методами. Щоб викликати метод, перед його назвою ставлять екземпляр і ->. Методи мають доступ до спеціальної змінної $this, яка вказує на поточний екземпляр.

<?php

class Calculator {
    public function sub($x, $y)
    {
        return $this->add($x, -$y); // Calls the method add() of the current instance
    }

    public function add($x, $y)
    {
        return $x + $y;
    }
}

$calculator = new Calculator(); // Creates a new instance of Calculator class
$calculator->sub(3, 1); // Calls the method sub() of the instance stored in $calculator
// => 2

Вказівки

У цій вправі ми напишемо трохи коду, який допоможе приготувати чудову лазанью з улюбленої кулінарної книги.

На нас чекають пʼять завдань, і всі вони повʼязані з часом приготування лазаньї.

1. Визначте очікуваний час приготування в духовці у хвилинах

Реалізуйте функцію expectedCookTime у класі Lasagna, яка не приймає аргументів і повертає, скільки хвилин лазанья має провести в духовці. Згідно з кулінарною книгою, очікуваний час приготування в духовці становить 40 хвилин:

<?php
$timer = new Lasagna();
$timer->expectedCookTime()
// => 40

2. Обчисліть залишок часу приготування в духовці у хвилинах

Реалізуйте функцію remainingCookTime у класі Lasagna, яка приймає як аргумент фактичну кількість хвилин, які лазанья вже провела в духовці, і повертає, скільки хвилин їй ще залишилося там бути, виходячи з очікуваного часу приготування в духовці з попереднього завдання.

<?php
$timer = new Lasagna();
$timer->remainingCookTime(30)
// => 10

3. Обчисліть час підготовки у хвилинах

Реалізуйте функцію totalPreparationTime у класі Lasagna, яка приймає як аргумент кількість шарів, які ми додали до лазаньї, і повертає, скільки хвилин ми витратили на її підготовку, якщо на кожен шар іде 2 хвилини.

<?php
$timer = new Lasagna();
$timer->totalPreparationTime(3)
// => 6

4. Обчисліть загальний час роботи у хвилинах

Реалізуйте функцію totalElapsedTime у класі Lasagna, яка приймає два аргументи: перший це кількість шарів, які ми додали до лазаньї, а другий це кількість хвилин, які лазанья вже провела в духовці. Функція має повернути загальну кількість хвилин, витрачених на приготування лазаньї, тобто суму часу підготовки у хвилинах і часу в хвилинах, який лазанья на цей момент провела в духовці.

<?php
$timer = new Lasagna();
$timer->totalElapsedTime(3, 20)
// => 26

5. Створіть сповіщення про те, що лазанья готова

Реалізуйте функцію alarm у класі Lasagna, яка не приймає аргументів і повертає повідомлення про те, що лазанью вже можна їсти.

<?php
$timer = new Lasagna();
$timer->alarm()
// => "Ding!"
Редагувати через GitHub Посилання відкривається в новому вікні або вкладці
PHP Exercism

Час розпочати Смачнюща лазанья Люсіана?

Зареєструйтеся на Exercism, щоб вивчати й опановувати PHP, а також 11 концепцій122 вправи та справжнє наставництво від людей, і все це безкоштовно.