Похоже, что его цель состоит в том, чтобы генерировать строки идентификатора (возможно, для класса CSS) в зависимости от путей и исключать числовые компоненты пути из сгенерированного идентификатора. Например, 'my/123/article'
дает ID "page-my-article"
.
Кажется, это происходит от функции (потому что цикл считывает параметры с использованием arg()
) и что он ожидает пути Drupal, такие как "node/123/edit"
.
Так функция будет называться что-то вроде этого:
mystery_function("my/123/article", "even/better/article");
Переменные:
$i
переменная, которая хранит индекс цикла
$suggestion
является строка, хранящих генерируемый идентификатор. Он инициализируется «страницей», потому что идентификатор должен иметь синтаксис «page-SOMETHING».
$arg
происходит от времени цикла: она считывает параметры, передаваемые в функцию тайны одна за одной
$suggestions
представляет собой массив, который содержит сгенерированные идентификаторы, по одному на аргумент, переданный функцию тайны.
В цикле:
"$arg = str_replace...
" строка удаляет нежелательные символы, такие как "\" (однако эта линия может определенно быть улучшена).
Линия «$suggestions[] = ...
» добавляет идентификатор в массив результатов.
Линия «if (!is_numeric($arg)...
» исключает номера из сгенерированного ID (например, «мой/123/статья», вероятно, предполагается производить «мой-статью»)
«$suggestion .= ...
» строка добавляет значение «$ Арг»к значению„$ внушения“и сохраняет его в„$ внушения“
Но если честно, я бы не советовал использовать этот код: Я сомневаюсь, что это работает, как предполагалось данный $suggestion
не инициализируется в каждом цикле, поэтому значение первого пути будет привязано ко второму, а к третьему и так далее, и я d oubt, который является преднамеренным.
Этот код может сделать что угодно, нам нужен контекст, который он использует. Остальная часть кода на этой странице, вероятно, также поможет. – martynthewolf 2010-11-26 14:47:02