php статический оператор if - PullRequest
       12

php статический оператор if

9 голосов
/ 13 сентября 2011

У меня есть такая конструкция в моем конфигурационном файле:

<?php
if (true) {
    $nonstatic = 1;
    static $config = 1;
}
else {
    $nonstatic = 2;
    static $config = 2;
}

echo $nonstatic;
echo $config;
?>

Так почему $ config содержит 2, если эта часть оператора ложна, а $ nonstatic содержит 1? Это ошибка?

1 Ответ

11 голосов
/ 13 сентября 2011

Я полагаю, этот кусок включен из функции.

Инициализация статических переменных разрешается во время компиляции, и , если интерпретатор находит несколько инициализаций, он просто принимает нижнюю .

...