Ошибка смещения PHP - PullRequest
       10

Ошибка смещения PHP

1 голос
/ 07 декабря 2011

Я сталкиваюсь с ошибкой PHP, которая из-за всех моих разборок в Интернете - мне пока не удалось взломать.

Ошибка говорит:

Error message Notice: Undefined offset: 3 in include() (line 89 of /home/devced/public_html/site/sites/all/themes/cedncsu/page.tpl.php).

Итак, осматривая мой код, я в настоящее время имею (фактическое использование прокомментировано ниже):

<?php
    // Get Base URL
    global $base_url;

    // Get the Page's Parent Menu Item
    $menuParent = menu_get_active_trail();

    // Since it returns an array, make sure to target what you are looking for
    // You should print_r what menu_get_active_trail() to see what else it gives you
    $menuParent = $menuParent[1]['link_title'];
    $menuParent = strtolower(str_replace( " ", "-", $menuParent));
    $menuParent = preg_replace('/[^\w\d_ -]/si', '', $menuParent);

    // Generate class specific for department page headers
    $menuParentDepartment = menu_get_active_trail();
    $menuParentDepartment = $menuParentDepartment[3]['link_title']; // This is where they say the error is
    $menuParentDepartment = strtolower(str_replace( " ", "-", $menuParentDepartment));
    $menuParentDepartment = preg_replace('/[^\w\d_ -]/si', '', $menuParentDepartment);

    // Current Page space replace/lowercase
    $currentTitle = strtolower(str_replace( " ", "-", $title));
    $currentTitle = preg_replace('/[^\w\d_ -]/si', '', $currentTitle);
?>

Я думаю, что это общая практика кодирования, которую я пропускаю, но, таким образомдалеко в тупик.Любая помощь будет принята с благодарностью.Спасибо!

1 Ответ

4 голосов
/ 07 декабря 2011

Проще говоря: $menuParentDepartment[3] не определено. Вы должны убедиться, что индекс (или, как его называет PHP, смещение) существует, прежде чем пытаться его индексировать. Используйте isset.

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