⊗ppPmSDRNP 445 of 447 menu

Roteamento com parâmetros nomeados em PHP

Vamos considerar uma das expressões regulares que processam URL:

<?php if (preg_match('#^/page/([a-z0-9_-]+)$#', $url, $params)) { $page = include 'view/page/show.php'; } ?>

Neste caso, acontece que nosso parâmetro vai para a captura. Em seguida, extraímos o valor do parâmetro da captura pelo seu número:

<?php $slug = $params[1]; ?>

Isso, na verdade, não é muito elegante, especialmente se houver vários parâmetros. Uma ideia mais bem-sucedida seria fazer parâmetros com nomes em vez de números. Para isso, usamos capturas nomeadas na nossa regex:

<?php if (preg_match('#^/page/(?<slug>[a-z0-9_-]+)$#', $url, $params)) { $page = include 'view/page/show.php'; } ?>

Nesse caso, poderemos obter o valor do parâmetro pelo seu nome:

<?php $slug = $params['slug']; ?>

Altere os parâmetros nas rotas do seu mecanismo para nomeados.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar