0

我的 Apache 日志充满了如下通知:

[Sun Aug 11 09:11:36 2013] [error] [client 127.0.0.1] PHP Notice: Undefined index: view in /var/www/components/com_content/router.php on line 59

这是引用的代码位:

    if (($menuItem instanceof stdClass) && $menuItem->query['view'] == $query['view'] && isset($query['id']) && $menuItem->query['id'] == (int) $query['id'])ug

    {       
            unset($query['view']);

            if (isset($query['catid']))
            {       
                    unset($query['catid']);
            }

            if (isset($query['layout']))
            {       
                    unset($query['layout']);
            }

            unset($query['id']);

            return $segments;
    }

根据我的阅读,isset 是最常见的解决方案,但这并没有什么不同。还有其他人遇到解决方案吗?

4

2 回答 2

1

在检查后将检查移动isset()到右侧stdClass

换句话说,改变

($menuItem instanceof stdClass) && $menuItem->query['view'] == $query['view'] && isset($query['id']) && $menuItem->query['id'] == (int) $query['id'])

($menuItem instanceof stdClass) && isset($query['id']) && $menuItem->query['view'] == $query['view'] && $menuItem->query['id'] == (int) $query['id'])
于 2013-08-13T20:43:42.040 回答
0

您指的是and和 PHP 抱怨的view索引,所以我假设这些变量中的一个或两个都没有索引。$menuItem->query$queryUndefined index: viewview

于 2013-08-13T20:46:41.600 回答