Tracks
/
PHP
PHP
/
Übungen
/
Lucians köstliche Lasagne
Lucians köstliche Lasagne

Lucians köstliche Lasagne

Lernübung

Einführung

Grundlagen

Ausführlichere Informationen zu diesen Themen findest du auf der Konzeptseite.

Allgemeine Syntax

Das öffnende PHP-Tag <?php markiert den Beginn von PHP-Code. Alle Anweisungen müssen mit einem ; enden, um Anweisungen voneinander zu trennen.

<?php

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

Zur besseren Lesbarkeit lassen alle Codebeispiele das öffnende PHP-Tag <?php weg.

Kommentare

Einzeilige Kommentare beginnen mit //.

// Single line comment

Werte und Variablen

Mit dem Zuweisungsoperator = kannst du einer Variablen einen Wert zuweisen. Variablennamen müssen mit einem Dollarzeichen $ beginnen und den Namenskonventionen folgen.

$count = 1; // Assign value of 1

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

Funktionen und Methoden

Werte und Variablen können an Funktionen übergeben werden. Die Argumente einer Funktion werden zu neuen Variablen, die die übergebenen Werte aufnehmen. Funktionen können mit dem Schlüsselwort return einen beliebigen Wert zurückgeben.

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

window_height(100);
// => 110

Funktionen innerhalb von Klassen und ihren Instanzen heißen Methoden. Beim Aufruf einer Methode stehen vor dem Namen die Instanz und ->. Methoden haben Zugriff auf die spezielle Variable $this, die auf die aktuelle Instanz verweist.

<?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

Anleitung

In dieser Übung schreibst du etwas Code, der dir hilft, eine großartige Lasagne aus deinem Lieblingskochbuch zu kochen.

Du hast fünf Aufgaben, die alle mit der Zeit zu tun haben, die du für das Kochen der Lasagne brauchst.

1. Definiere die erwartete Backzeit in Minuten

Implementiere die Funktion expectedCookTime in der Klasse Lasagna, die keine Argumente entgegennimmt und zurückgibt, wie viele Minuten die Lasagne im Ofen bleiben sollte. Laut dem Kochbuch beträgt die erwartete Backzeit 40 Minuten:

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

2. Berechne die verbleibende Backzeit in Minuten

Implementiere die Funktion remainingCookTime in der Klasse Lasagna, die die tatsächlichen Minuten, die die Lasagne schon im Ofen war, als Argument entgegennimmt und zurückgibt, wie viele Minuten die Lasagne noch im Ofen bleiben muss. Dabei orientierst du dich an der erwarteten Backzeit in Minuten aus der vorherigen Aufgabe.

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

3. Berechne die Vorbereitungszeit in Minuten

Implementiere die Funktion totalPreparationTime in der Klasse Lasagna, die die Anzahl der Schichten, die du der Lasagne hinzugefügt hast, als Argument entgegennimmt und zurückgibt, wie viele Minuten du mit der Vorbereitung der Lasagne verbracht hast. Dabei gehst du davon aus, dass jede Schicht 2 Minuten Vorbereitung braucht.

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

4. Berechne die gesamte Arbeitszeit in Minuten

Implementiere die Funktion totalElapsedTime in der Klasse Lasagna, die zwei Argumente entgegennimmt: Das erste Argument ist die Anzahl der Schichten, die du der Lasagne hinzugefügt hast, und das zweite Argument ist die Anzahl der Minuten, die die Lasagne schon im Ofen war. Die Funktion sollte zurückgeben, wie viele Minuten du insgesamt mit dem Kochen der Lasagne verbracht hast. Das ist die Summe aus der Vorbereitungszeit in Minuten und der Zeit in Minuten, die die Lasagne im Moment im Ofen verbracht hat.

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

5. Erstelle eine Benachrichtigung, dass die Lasagne fertig ist

Implementiere die Funktion alarm in der Klasse Lasagna, die keine Argumente entgegennimmt und eine Nachricht zurückgibt, die anzeigt, dass die Lasagne fertig zum Essen ist.

<?php
$timer = new Lasagna();
$timer->alarm()
// => "Ding!"
Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab
PHP Exercism

Bereit, mit Lucians köstliche Lasagne zu starten?

Melde dich bei Exercism an, um PHP mit 11 Konzepte122 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.