Named params no Code Igniter
Named params são parâmetros enviados numa url, mas sem ordem definida. Na prática são o velho ?var=valor&var2=valor2, mas de um modo mais limpo.
www.seusite.com/controller/método/nome:Felipe/cidade:Teutônia/
Eu venho utilizando CodeIgniter há algum tempo e ele não permite passar variáveis como o PHP normalmente faz e acabei criando algo assim para utilizar. E quando li o artigo do Tulio Faria falando sobre named params, mas no CakePHP, a primeira coisa que pensei é que deveria disponibilizar minha função aqui no blog.
Na verdade é uma estensão da biblioteca URI:
Para chamar essa função faça da seguinte maneira:
-
$this->uri->named_param('nome'); // Na url de exemplo acima retornaria Felipe
-
$this->uri->named_param('cidade'); // Na url de exemplo acima retornaria Teutônia
Update:
Conversando o Guilherme Medeiros, chegamos a uma solução diferente da de cima. Nesta versão não se chama uma função que retornará o valor, mas sim os valores já estão na variável named, ficando a classe assim:
Sendo usado assim:
-
$this->uri->named->nome; // Na url de exemplo acima retornaria Felipe
-
$this->uri->named->cidade; // Na url de exemplo acima retornaria Teutônia
Vale lembrar que o valor deve ser testado com o isset(), pois pode não existir.
Até que parei e conheci o
Digo isso, pois freqüentemente nas listas que participo acontecem discussões inflamadas sobre usar ou não usar algo, como IDEs,
Na outra mão corre a