Это решение является нерекурсивным. Обратите внимание, что порядок элементов будет несколько смешанным.
function flatten($array) {
$return = array();
while(count($array)) {
$value = array_shift($array);
if(is_array($value))
foreach($value as $sub)
$array[] = $sub;
else
$return[] = $value;
}
return $return;
}
По словам чиновника документы :
, Когда маршрутизатор перешел к новому представлению компонента, он обновляет местоположение браузера и историю с URL для того представления. Это - строго локальный URL. Браузер не был должен отправлять этот URL на сервер, и не должен перезагрузка страница.
современная поддержка браузеров HTML5 history.pushState
, техника, которая изменяет местоположение браузера и историю, не инициировав запрос страницы сервера. Маршрутизатор может составить "естественный" URL, который неотличим от того, который иначе потребовал бы загрузки страницы.
Вот URL стиля HTML5 pushState, который направляет к xyz
компонент: localhost:4200/xyz/
Более старые браузеры отправляют запросы страницы к серверу, когда URL местоположения изменяется, если изменение не происходит после #
(названный хеш ). Маршрутизаторы могут использовать в своих интересах это исключение путем создания, в приложении направляют URL с хешами.
Вот хеш URL стиля, который направляет к xyz
компонент: localhost:4200/src/#/xyz/
я хотел бы знать, какой предлагает больше для веб-приложения.
Почти все Угловые проекты должны использовать стиль HTML5 по умолчанию как:
Представляющие критические страницы на сервере являются техникой, которая может значительно улучшить воспринятую скорость отклика, когда приложение сначала загружается. Приложение, которое иначе заняло бы десять или больше секунд для запуска, могло быть представлено на сервере и поставлено устройству пользователя в меньше, чем секунда.
Эта опция только доступна, если приложение URL похоже на нормальные веб-URL без хешей (#) в середине.
Палка со значением по умолчанию, если у Вас нет неопровержимого довода для обращения для хеширования маршрутов.