O'Reilly logo

PHP 5 Kochbuch, Third Edition by Stephan Schmidt, Ulrich Speidel, Matthias Brusdeylins, Carsten Lucke, Adam Trachtenberg, David Sklar

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

5.5 Statische Variablen verwenden

Problem

Sie benötigen eine lokale Variable, die ihren Inhalt zwischen zwei Aufrufen einer Funktion behält.

Lösung

Deklarieren Sie die Variable als statisch (static):

function track_times_called() {
    static $i = 0;
    $i++;
    return $i;
}

Diskussion

Wenn eine Variable als static deklariert ist, erinnert sich eine Funktion an sie. Wenn es also nachfolgende Aufrufe der Funktion gibt, können Sie auf den Wert der gespeicherten Variablen zugreifen. Die in Listing 5.1 dargestellte Funktion pc_check_the_count() verwendet statische Variablen, um die Strikes und Bälle in einem Baseball-Spiel zu verfolgen.

function pc_check_the_count($pitch) { static $strikes = 0; static $balls = 0; switch ($pitch) { case 'foul': if (2 == $strikes) break; ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required