Неопределенная переменная? Но я определил это - PullRequest
2 голосов
/ 27 апреля 2010

Задолго до того, как кто-нибудь скажет, что есть дублирующий вопрос ... (Я заметил, что люди, которые не могут ответить на вопрос, как правило, бегут и ищут дубликат, а затем сообщают об этом.)

Вот дубликат, который вы ищете: php утверждает, что моя переменная не определена

Однако, это не совсем дубликат. Это дает мне решение, но я не особо ищу это конкретное решение.

Вот моя проблема:

Notice: Undefined variable: custom

Теперь вот мой код:

                $headers = apache_request_headers(); // Request the visitor's headers.
                $customheader = "Header: 7ddb6ffab28bb675215a7d6e31cfc759"; //This is what the header should be.
                        foreach ($headers as $header => $value) { 
                                $custom .= "$header: $value"; 
}

Очевидно, $ custom определен. Согласно другому вопросу, это глобальный и должен быть отмечен как один. Но как это глобально? И как я могу сделать это (неглобальный)? Сценарий работает нормально, он по-прежнему отображает то, что должен, и действует правильно, но когда я включаю сообщения об ошибках, он просто выводит также это уведомление. Я полагаю, что в данный момент не нужно , чтобы исправить это, но мне все равно хотелось бы узнать, почему он это делает.

Ответы [ 2 ]

5 голосов
/ 27 апреля 2010

Проблема здесь:

$custom .= "$header: $value"; 

Вы добавляете в $ custom, но до первого запуска цикла значение в $ custom не определено.

Поставьте $custom = ''; перед циклом, и ошибка должна исчезнуть.

1 голос
/ 27 апреля 2010

Я не вижу там начального определения для $custom - я вижу, что вы присоединяетесь к нему, но вы никогда не даете ему начальное значение.

Вставьте строку $custom = ''; перед циклом foreach.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...