HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Шаблоны сайта содержат множество внутренних ссылок: от меню до кнопок и форм. До сих пор мы формировали эти ссылки там, где они нам нужны:</p>
1 <p>Шаблоны сайта содержат множество внутренних ссылок: от меню до кнопок и форм. До сих пор мы формировали эти ссылки там, где они нам нужны:</p>
2 <p>Так же ссылки строятся и в обработчиках, например, при редиректах:</p>
2 <p>Так же ссылки строятся и в обработчиках, например, при редиректах:</p>
3 <p>В примерах выше формирование ссылки зашито прямо в то место, где она используется. Такой способ формирования ссылок потенциально опасен. Например, если маршрут изменится с /users/{id} на /u/{id}, придется пройтись по всем шаблонам и изменить все ссылки /users/&lt;?= $user['id'] ?&gt; на /u/&lt;?= $user['id'] ?&gt;.</p>
3 <p>В примерах выше формирование ссылки зашито прямо в то место, где она используется. Такой способ формирования ссылок потенциально опасен. Например, если маршрут изменится с /users/{id} на /u/{id}, придется пройтись по всем шаблонам и изменить все ссылки /users/&lt;?= $user['id'] ?&gt; на /u/&lt;?= $user['id'] ?&gt;.</p>
4 <p>Если этот маршрут удалить, то сайт продолжит работать, но ссылки начнут вести на страницы 404. Лучше, если страницы с такими ссылками начнут выдавать ошибки. Тогда выявить подобные ссылки будет просто.</p>
4 <p>Если этот маршрут удалить, то сайт продолжит работать, но ссылки начнут вести на страницы 404. Лучше, если страницы с такими ссылками начнут выдавать ошибки. Тогда выявить подобные ссылки будет просто.</p>
5 <p>Для решения этой задачи придумали именованные маршруты. Каждому маршруту фреймворка присваивается имя, которое затем можно использовать при построении конкретной ссылки:</p>
5 <p>Для решения этой задачи придумали именованные маршруты. Каждому маршруту фреймворка присваивается имя, которое затем можно использовать при построении конкретной ссылки:</p>
6 <p>В реальных приложениях ссылки формируются во многих частях приложениях:</p>
6 <p>В реальных приложениях ссылки формируются во многих частях приложениях:</p>
7 <ul><li>В шаблонах</li>
7 <ul><li>В шаблонах</li>
8 <li>В обработчиках (при редиректах)</li>
8 <li>В обработчиках (при редиректах)</li>
9 <li>В письмах</li>
9 <li>В письмах</li>
10 </ul><p>Поэтому большинство фреймворков предоставляют готовую функцию, которую можно использовать везде, где формируются ссылки.<a>PHP-View</a>, который мы используем, не добавляет этот метод в шаблоны. Но это возможно в<a>Twig-View</a>. В последнем ссылки в шаблонах строятся так:</p>
10 </ul><p>Поэтому большинство фреймворков предоставляют готовую функцию, которую можно использовать везде, где формируются ссылки.<a>PHP-View</a>, который мы используем, не добавляет этот метод в шаблоны. Но это возможно в<a>Twig-View</a>. В последнем ссылки в шаблонах строятся так:</p>
11  
11